.htaccess ve Nginx Yönlendirme Oluşturucu
Bu araç tamamen tarayıcında çalışır; girdiğin bilgiler hiçbir sunucuya gönderilmez.
Yönlendirmeler tek seferde, döngüsüz.
İstediğin kuralları işaretle; Apache ve LiteSpeed için doğru sırada yazılmış .htaccess dosyasını ve aynı işi yapan Nginx server {} yapılandırmasını anında al.
.htaccess ile HTTPS ve www yönlendirmesi nasıl yapılır?
Sitenin kök klasörüne (public_html ya da httpdocs) .htaccess adlı bir dosya koy ve
yönlendirme kurallarını içine yaz. HTTP’den HTTPS’e kalıcı yönlendirme için en yaygın kural şudur:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Yukarıdaki oluşturucu bu kuralı www tercihinle birleştirir; böylece http://www.ornek.com adresine gelen ziyaretçi
iki ayrı yönlendirmeden geçmeden, tek adımda https://ornek.com adresine gider. .htaccess dosyasını Apache ve
LiteSpeed okur; Nginx okumaz. Nginx kullanan bir sunucuda aynı kuralları “Nginx” sekmesindeki yapılandırmayla uygulaman gerekir.
301 ile 302 yönlendirme arasındaki fark
| 301 (kalıcı) | 302 (geçici) | |
|---|---|---|
| Anlamı | Sayfa kalıcı olarak yeni adrese taşındı. | Sayfa kısa süreliğine başka adreste. |
| Arama motoru | Yeni adresi dizine alır, eski adresin sıralama sinyallerini ona aktarır. | Genellikle eski adresi dizinde tutar. |
| Tarayıcı önbelleği | Tarayıcı yönlendirmeyi uzun süre hatırlar. | Her seferinde sunucuya yeniden sorar. |
| Ne zaman? | HTTPS’e geçiş, alan adı değişikliği, URL yapısı değişikliği. | Bakım sayfası, kısa kampanya, A/B testi. |
301 tarayıcıda önbelleğe alındığı için yanlış bir kuralı düzelttikten sonra bile eski davranışı görebilirsin. Test ederken
gizli pencere ya da curl -I https://ornek.com kullanmak en güvenilir yoldur.
SEO için kanonik yönlendirme neden önemli?
Sitene http://, https://, www’lu ve www’suz olmak üzere dört farklı adresten ulaşılabiliyorsa,
arama motorları aynı içeriğin dört kopyasını görür. Bağlantılar ve sıralama sinyalleri bu kopyalar arasında bölünür. Tek bir
kanonik adres seçip diğer hepsini 301 ile ona yönlendirmek bu bölünmeyi önler. www’lu ya da www’suz olmasının
SEO açısından farkı yoktur; önemli olan birini seçip her yerde (yönlendirme, site haritası, rel="canonical") tutarlı kullanmaktır.
Kuralların sırası neden önemli?
Apache kuralları yukarıdan aşağıya işler ve [L] bayrağı olan ilk eşleşmede durur. Bu yüzden oluşturucu önce erişim engellerini (IP, hotlink),
sonra sayfaya özel 301’leri, ardından alan adı düzeyindeki www ve HTTPS yönlendirmelerini, en son da adres biçimini (index gizleme, eğik çizgi)
yazar. Özel yönlendirmelerin hedefi doğrudan kanonik https:// adres olduğu için ziyaretçi tek bir 301 ile doğru sayfaya ulaşır;
yönlendirme zinciri hem sayfa hızını hem de arama motorlarının taramasını olumsuz etkiler.
Yaygın hatalar
- Yönlendirme döngüsü (ERR_TOO_MANY_REDIRECTS): Site Cloudflare gibi bir proxy ya da yük dengeleyici arkasındaysa sunucu
isteği HTTP olarak görür ve
%{HTTPS} offkoşulu her seferinde doğru olur. Bu durumda koşuluRewriteCond %{HTTP:X-Forwarded-Proto} !httpsile değiştir ya da Cloudflare’de SSL modunu “Full” yap. - Birden fazla
RewriteEngine On: Farklı eklentilerden kopyalanan blokların dağınık sırası, kuralların beklenmedik sırayla çalışmasına yol açar. Yönlendirmeleri tek blokta, özelden genele doğru sırala. - WordPress bloğunun içine yazmak:
# BEGIN WordPressile# END WordPressarası WordPress tarafından yeniden yazılır; kendi kurallarını bu bloğun üstüne ekle. - 500 Internal Server Error: Sunucu
Optionsya da belirli bir modülü.htaccess’te kullanmaya izin vermiyorsa tüm site 500 verir. Kuralları tek tek ekleyip test et; hata günlüğü sorunlu satırı gösterir. - HSTS’i erken açmak: HSTS başlığı gönderildikten sonra tarayıcılar sertifika sorunu olsa bile siteye HTTP ile bağlanmaz. Önce HTTPS’in her alt alan adında sorunsuz çalıştığından emin ol.
Krowten web hosting Nginx ve PHP-FPM üzerinde çalışır; ücretsiz SSL sertifikası pakete dahildir. Alan adının doğru sunucuyu gösterdiğini DNS sorgulama aracıyla kontrol edebilirsin.
Krowten web hosting Nginx ve PHP-FPM üzerinde çalışır; NVMe disk ve ücretsiz SSL sertifikası her pakette hazır gelir.
.htaccess ve Nginx Yönlendirme Oluşturucu
hakkında.
.htaccess dosyası nerede bulunur?+
Sitenin kök klasöründe (genellikle public_html, httpdocs ya da www) bulunur. Adı nokta ile başladığı için dosya yöneticisinde gizli dosyaları göster seçeneğini açman gerekebilir. Yoksa aynı adla yeni bir dosya oluşturabilirsin.
.htaccess Nginx’te çalışır mı?+
Hayır. Nginx .htaccess dosyalarını okumaz; kurallar sunucu yapılandırmasındaki server bloğuna yazılır. Bu araç aynı kuralların Nginx karşılığını da üretir.
Too many redirects (çok fazla yönlendirme) hatası nasıl düzelir?+
Genellikle site bir proxy (ör. Cloudflare) arkasındadır ve sunucu isteği HTTP sanar. HTTPS koşulunu X-Forwarded-Proto başlığına göre yaz ya da Cloudflare SSL modunu Full yap. WordPress’te site adresinin https ile kayıtlı olduğunu da kontrol et.
www mı, www’suz mu daha iyi?+
Arama motorları açısından fark yoktur. Önemli olan birini seçip diğerini 301 ile ona yönlendirmek ve site haritası ile kanonik etiketlerde aynı adresi kullanmaktır.