406 Not Acceptable, sunucunun, istemcinin Accept
başlığıyla belirttiği formatta uygun bir yanıt üretemediği anlamına gelir. Örneğin; tarayıcı yalnızca application/json
isterken sunucu sadece text/html
gönderiyorsa, bu hata oluşabilir.
Olası Sebepler
- MIME Türü Uyuşmazlığı
İstemciAccept: application/xml
gönderir; sunucu XML değil, JSON dönerse 406 hatası oluşur (WebFX). - Karakter Kodlaması Problemi
Accept-charset
veyaAccept-language
başlıklarında uyumsuzluk olabilir (Reddit, Kinsta®). - Sunucu Güvenlik Kuralları
mod_security
gibi güvenlik modülleri belirli istekleri engelleyebilir ve 406’a yol açabilir. - Web Uygulaması veya CMS Sorunları
WordPress eklentileri, temalar veya kod değişiklikleri bu hataya sebep olabilir.
Çözüm Yolları
1. Accept
Başlığını Denetle
- İstemci tarafında, gönderilen
Accept
başlığını kontrol edin. - Gerekirse
Accept: */*
kullanarak sunucunun herhangi bir yanıt türünü kabul etmesini sağlayın (Stack Overflow).
2. Sunucu Yanıt Formatını Geriye Uyarlayın
- Sunucu JSON, XML veya HTML destekliyorsa, istemciye uygun formatta yanıt verin.
- Gerekirse sunucu tarafında içerik müzakeresini (
content negotiation
) yeniden yapılandırın.
3. Güvenlik Modüllerini Geçici Olarak Kapatın
- Apache üzerindeyseniz
mod_security
kurallarını devre dışı bırakabilir veya şüpheli kuralları beyaz listeye alabilirsiniz. - Bu, özellikle WordPress hosting sağlayıcılarında sıkça karşılaşılan bir çözümdür.
4. CMS ve Eklenti Denetimi
- WordPress gibi sistemlerde son yapılan değişiklikleri geri alın veya eklentileri tek tek devre dışı bırakıp deneyin.
- Veritabanı değişikliklerini kontrol edebilir ve hata veren bileşeni izole edebilirsiniz.
5. HTTP İstek ve Yanıt Başlıklarını İnceleyin
- Tarayıcı geliştirici araçları > Ağ (Network) sekmesini kullanarak hem
Accept
hem deContent-Type
başlıklarını gözden geçirin . - Burada isteğin veya yanıtın formatının neden reddedildiğini görebilirsiniz.
Özet Tablo
Adım | Açıklama |
---|---|
Accept başlığını düzenle | Uygun hale getir veya gevşet (*/* ) |
Sunucu formatını kontrol et | JSON, HTML, XML gibi destekleniyor mu? |
Güvenlik modülü | mod_security kapatılabilir veya kural silinebilir |
CMS/eklentiler | Değişiklikleri geri al, test et |
HTTP başlıkları | Network aracında detaylı analiz yap |
Umarım bu makale, 406 Not Acceptable hatasını çözmeniz konusunda hem teknik hem de anlaşılır bir rehber olur. Eklemek istediğiniz başka bir detay veya örnek varsa memnuniyetle yardımcı olurum!