mod_rewrite modülü gelen URL isteklerinde değişiklik yapabilmek için düzenli ifade kurallarına dayalı, devingen bir yol sunar. Böylece, keyfi URL'leri dahili URL yapınızla kolayca eşleyebilirsiniz.
Gerçekten esnek ve güçlü bir URL kurgulama mekanizması oluşturmak için sınısız sayıda kural ve her kural için de sınırsız sayıda koşul destekler. URL değişiklikleri çeşitli sınamalara dayanır; sunucu değişkenleri, HTTP başlıkları, ortam değişkenleri, zaman damgaları hatta çeşitli biçimlerde harici veritabanı sorguları bile bu amaçla kullanılabilir.
Yeniden yazma kuralları URL’lerin tamamında (path-info kısmı ve sorgu dizgesi dahil) hem sunucu bağlamında (apache2.conf) hem sanal konaklar bağlamında (<VirtualHost> bölümleri), hem de dizin bağlamında (.htaccess dosyaları ve <Directory> bölümleri) çalışır ve URL üzerinde sorgu dizgesi bölümleri bile oluşturabilir. Kurallara atadığınız seçeneklere bağlı olarak, yeniden yazılan URL sonuçta dahili işlemlerde, harici yönlendirmelerde ve vekalet işlemlerinde kullanılabilir.
mod_rewrite modülü çok güçlü olduğundan, gerçekten çok karmaşık olabilir. Bu belge, başvuru belgelerinin tamamlayıcısı olup karmaşıklığı biraz azaltmaya çalışır ve mod_rewrite ile elde edilebilen ortak senaryoların oldukça açıklamalı örneklerini sağlar. Fakat ayrıca, mod_rewrite modülünü kullanmamanız, yerine standart Apache özelliklerini kullanmanız gereken durumları da göstermeye, böylece gereksiz karmaşıklıktan kurtulmanızı sağlamaya çalıştık.