Autor del tema
#0
Linux tabanlı sistemlerde, Apache web sunucusu sıklıkla dinamik içerik oluşturmak ve URL yönlendirmeleri yapmak için kullanılır. Bu işlevlerin çoğu, Apache'nin mod_rewrite modülü sayesinde gerçekleştirilir. mod_rewrite, kullanıcıların URL'leri yeniden yazmalarına ve yönlendirmeler yapmalarına olanak tanır; bu, SEO dostu URL yapılandırmaları oluşturmaktan, eski URL'leri yeni URL'lere yönlendirmeye kadar birçok avantaj sağlar.
mod_rewrite'ı etkinleştirmek için öncelikle Apache'nin yapılandırma dosyasında ilgili modülün yüklü olduğundan emin olmalıyız. Çoğu dağıtımda, bu modül varsayılan olarak yüklü gelir, ancak etkinleştirmek için aşağıdaki komutu kullanabilirsiniz:
Ardından, Apache'nin ana yapılandırma dosyasında veya ilgili sanal ana makine dosyasında, etiketini kullanarak URL yeniden yazma kurallarının uygulanacağı dizin için izinleri ayarlamak gerekir. Örneğin:
Bu ayar, .htaccess dosyalarında yapılan değişikliklerin geçerli olmasını sağlar. .htaccess dosyası, URL'leri yeniden yazmak için gerekli kuralları içerebilir. Örneğin, aşağıdaki kural, "eski-sayfa.html" URL'sini "yeni-sayfa.html" URL'sine yönlendirebilir:
Bu kural, "eski-sayfa.html" adresine yapılan tüm istekleri, tarayıcıya yanıt olarak "yeni-sayfa.html" adresine yönlendirir. Burada "R=301" kalıcı yönlendirme anlamına gelirken, "L" ise bu kuralın son olduğunu belirtir.
mod_rewrite ile daha karmaşık yönlendirme kuralları da oluşturmak mümkündür. Örneğin, URL'deki belirli bir parametreyi kontrol ederek yönlendirme yapmak için şu şekilde bir kural yazılabilir:
Bu kural, "product.php?id=123" gibi bir URL'yi işleyerek, 123 ID'sine sahip ürünü göstermek için gerekli yönlendirmeyi yapar.
Sonuç olarak, Apache'nin mod_rewrite modülü, web yöneticilerine büyük esneklik ve kontrol sağlar. URL'lerinizi daha kullanıcı dostu hale getirirken, SEO açısından da önemli avantajlar sunar. Bu modülü etkin bir şekilde kullanmak, web sitenizin performansını ve erişilebilirliğini artırabilir.
mod_rewrite'ı etkinleştirmek için öncelikle Apache'nin yapılandırma dosyasında ilgili modülün yüklü olduğundan emin olmalıyız. Çoğu dağıtımda, bu modül varsayılan olarak yüklü gelir, ancak etkinleştirmek için aşağıdaki komutu kullanabilirsiniz:
CODE
1sudo a2enmod rewriteArdından, Apache'nin ana yapılandırma dosyasında veya ilgili sanal ana makine dosyasında, etiketini kullanarak URL yeniden yazma kurallarının uygulanacağı dizin için izinleri ayarlamak gerekir. Örneğin:
CODE
123<Directory /var/www/html>
AllowOverride All
</Directory>Bu ayar, .htaccess dosyalarında yapılan değişikliklerin geçerli olmasını sağlar. .htaccess dosyası, URL'leri yeniden yazmak için gerekli kuralları içerebilir. Örneğin, aşağıdaki kural, "eski-sayfa.html" URL'sini "yeni-sayfa.html" URL'sine yönlendirebilir:
CODE
12RewriteEngine On
RewriteRule ^eski-sayfa\.html$ yeni-sayfa.html [R=301,L]Bu kural, "eski-sayfa.html" adresine yapılan tüm istekleri, tarayıcıya yanıt olarak "yeni-sayfa.html" adresine yönlendirir. Burada "R=301" kalıcı yönlendirme anlamına gelirken, "L" ise bu kuralın son olduğunu belirtir.
mod_rewrite ile daha karmaşık yönlendirme kuralları da oluşturmak mümkündür. Örneğin, URL'deki belirli bir parametreyi kontrol ederek yönlendirme yapmak için şu şekilde bir kural yazılabilir:
CODE
12RewriteCond %{QUERY_STRING} id=([0-9]+)
RewriteRule ^product\.php$ product.php?id=%1 [L]Bu kural, "product.php?id=123" gibi bir URL'yi işleyerek, 123 ID'sine sahip ürünü göstermek için gerekli yönlendirmeyi yapar.
Sonuç olarak, Apache'nin mod_rewrite modülü, web yöneticilerine büyük esneklik ve kontrol sağlar. URL'lerinizi daha kullanıcı dostu hale getirirken, SEO açısından da önemli avantajlar sunar. Bu modülü etkin bir şekilde kullanmak, web sitenizin performansını ve erişilebilirliğini artırabilir.