Peki bu "Too Many Redirects" hatası tam olarak ne demek?
Bu hata, bir web tarayıcısının, belirli bir URL'yi sürekli olarak yeniden yönlendirdiği, ancak sonuca ulaşamadığı bir durumu ifade eder. Tarayıcı sürekli olarak URL'yi yönlendirmeye çalışır, ama hiçbir zaman doğru sayfaya ulaşamaz. Bu sorunun çözümü için bazı adımları atmamız gerekecek.
Adım 1: Tarayıcı Çerezlerini Temizleyin
Hata bazen sadece sizin tarayıcınızla ilgili olabilir. Tarayıcı çerezleri, önceden ziyaret ettiğiniz sayfalardan bazı yönlendirme bilgilerini saklayabilir. Bu yüzden, ilk olarak yapmanız gereken şey tarayıcı çerezlerini temizlemek. Tarayıcıyı temizleyerek, eski yönlendirme bilgilerini sıfırlamış oluyorsunuz.
Nasıl Temizlenir?
Tarayıcınızda ayarlara gidin, ardından “Çerezler” veya “Veri Temizleme” seçeneğini bulun ve çerezleri temizleyin. Bu, bazen sorununuzu çözebilir. Fakat eğer bu adım işe yaramazsa, daha derinlemesine bir inceleme yapmamız gerekecek.
Adım 2: Nginx Yapılandırmasını Kontrol Edin
Şimdi işin içine giriyoruz! Nginx sunucusundaki yanlış yapılandırma, bu hatanın en yaygın nedenlerinden biridir. Genellikle, HTTP ile HTTPS arasında bir yönlendirme döngüsü oluşur. Yani, site önce HTTP'ye yönlendirilir, ardından HTTPS'ye, ve bu döngü asla sonlanmaz.
Bunu çözmek için, Nginx yapılandırma dosyanızı kontrol etmemiz gerekiyor. nginx.conf dosyasını açarak, yönlendirmeleri düzenleyebiliriz.
Yönlendirmeleri Düzenlemek İçin Yapmanız Gerekenler:
Aşağıdaki örneği kullanarak, doğru yönlendirmeyi yapabilirsiniz:
server {
listen 80;
server_name www.orneksite.com;
return 301 https://$host$request_uri;
}
Bu yapılandırma, HTTP üzerinden gelen her isteği HTTPS'ye yönlendirecek şekilde ayarlanmıştır. Eğer bu yönlendirmeyi daha önce doğru yapmadıysanız, Nginx sürekli olarak yeniden yönlendirmeye çalışacaktır, bu da "Too Many Redirects" hatasına yol açar.
Adım 3: SSL Sertifikasını Kontrol Edin
SSL sertifikası, özellikle HTTPS yönlendirmelerinde çok önemli bir rol oynar. Sertifikanın geçerli olup olmadığını kontrol etmelisiniz. Eğer sertifikanız geçersizse ya da yanlış bir yapılandırma yapılmışsa, yine yönlendirme döngüleri yaşanabilir.
SSL Sertifikası Sorunu Nasıl Çözülür?
Sertifikanızın geçerliliğini kontrol etmek için şu komutu kullanabilirsiniz:
openssl s_client -connect orneksite.com:443
Eğer SSL sertifikanızda bir problem varsa, yeniden yüklemeyi veya yeniden oluşturmayı düşünmelisiniz. Ayrıca, Nginx yapılandırmasında SSL ayarlarını doğru şekilde yaptığınızdan emin olun.
Adım 4: WordPress veya Diğer CMS Yönlendirmelerini Gözden Geçirin
Eğer web siteniz bir CMS (Content Management System) kullanıyorsa, örneğin WordPress, yönlendirmeler orada da yapılabilir. WordPress’in URL Ayarları bölümünü kontrol etmek faydalı olacaktır. Hem "WordPress Adresi (URL)" hem de "Site Adresi (URL)" alanlarının doğru şekilde ayarlandığından emin olun.
Ayrıca, WordPress'teki .htaccess dosyasını da kontrol etmelisiniz.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Bu yapılandırma, HTTPS'yi zorunlu kılacaktır. Eğer bir yönlendirme döngüsü hala devam ediyorsa, bu adımları izleyerek sorunu çözebilirsiniz.
Adım 5: Nginx'i Yeniden Başlatın
Tüm yapılandırmaları kontrol ettikten sonra, Nginx’i yeniden başlatmak her zaman iyi bir fikirdir. Bunun için aşağıdaki komutu kullanabilirsiniz:
sudo systemctl restart nginx
Yeniden başlatma, yapılan tüm değişikliklerin geçerli olmasını sağlar ve bazen basit bir yeniden başlatma ile sorun ortadan kalkabilir.
Sonuç
“Too Many Redirects” hatası, genellikle yanlış yönlendirmelerden kaynaklanır. Bu yazıda, doğru yönlendirme ayarları yaparak bu hatayı nasıl çözebileceğinizi adım adım gösterdik. Tarayıcı çerezlerini temizlemek, Nginx yapılandırmalarını gözden geçirmek ve SSL sertifikasını kontrol etmek gibi işlemler, bu sorunu çözmek için yapmanız gereken temel adımlardır.
Eğer yukarıdaki adımlar sorununuzu çözmediyse, sorunun daha karmaşık olabileceğini unutmayın. Web sunucunuzun tüm ayarlarını gözden geçirebilir ve gerekirse bir uzmandan yardım alabilirsiniz. Ama çoğu zaman, bu basit adımlarla Too Many Redirects hatasını çözebilirsiniz.