Apache Sunucuda Rewrite Kuralları: Temel ve İleri Düzey Kullanımlar

0 الردود 2 المشاهدات
·
المشاركون
صاحب الموضوع #1
Apache Sunucuda Rewrite Kuralları

Apache web sunucularında URL yönlendirmeleri ve temiz URL yapıları oluşturmak için en sık kullanılan araçlardan biri mod_rewrite modülüdür. Bu modül sayesinde URL'leri dinamik veya statik hale getirerek, SEO uyumlu, kullanıcı dostu ve güvenli siteler geliştirebilirsiniz. Ancak, doğru ve etkili kullanabilmek için temel kuralları ve yapılandırmaları iyi anlamak gerekir.

İlk olarak, mod_rewrite'in aktif olması gerekir. Bu genellikle httpd.conf veya .htaccess dosyası içinde aşağıdaki satırla sağlanır:

كود
1LoadModule rewrite_module modules/mod_rewrite.so


Daha sonra, .htaccess veya ana yapılandırma dosyasında RewriteEngine’yi on yaparız:

كود
1RewriteEngine On


En temel rewrite kuralı şu şekildedir:

[code]RewriteRule pattern target [flags]

Burada, pattern gelen URL'yi eşleştirmeyi sağlar, target ise yönlendirme veya yeniden yazma işleminin hedefidir. Örneğin, tüm old-page.html isteklerini new-page.html'ye yönlendirmek için:

[code]RewriteRule ^old-page\.html$ new-page.html [R=301,L]

Burada, R=301 kalıcı yönlendirme (SEO açısından önemli), L ise bu kuralın son olduğunu belirtir.

İleri düzey kullanımlarında, URL parametrelerini yakalamak ve yeniden kullanmak yaygındır. Örneğin:

[code]RewriteRule ^product/([0-9]+)/?$ product.php?id=$1 [L]

Bu kuralla, product/123 gibi URL'ler product.php?id=123'ye çevrilir. Bu, URL yapısını temiz ve düzenli tutarken, arka planda dinamik içerik sağlama imkanı tanır.

Ayrıca, koşula dayalı yönlendirmeler yapmak için RewriteCond kullanılır. Örneğin, sadece belirli bir dizin veya tarayıcı türü için kurallar eklenebilir:

[code]RewriteCond %{HTTP_USER_AGENT} ^Mozilla.*$
RewriteRule ^special-page\.html$ special-mozilla.html [L]

Bunun yanı sıra, flags kullanımı kuralların davranışını belirler. QSA (Query String Append), orijinal URL'deki sorgu parametrelerini korur; NC (No Case) ise büyük/küçük harf duyarsızlığı sağlar.

Sonuç olarak, Apache'de rewrite kuralları doğru yapılandırıldığında, sitenizin URL yapısı temizlenir, kullanıcı deneyimi artar ve SEO performansı iyileşir. Ancak, karmaşık kurallarda dikkatli olmak ve test etmek önemlidir; yanlış yapılandırmalar site erişimini engelleyebilir veya arama motorları tarafından yanlış anlaşılmaya neden olabilir. Bu nedenle, her değişiklik öncesinde yedek almak ve test ortamında doğrulama yapmak en iyi uygulamadır.

يجب تسجيل الدخول للرد.

0 اقتباسات محددة