Ana sayfa ve yönetim paneli açılıyor, index.php?p=42yazıyı gösteriyor; ancak okunabilir kalıcı bağlantıların tamamı 404 veriyorsa içerik büyük olasılıkla yerindedir. Sorun, isteğin WordPress front controller’a aktarılmasını sağlayan rewrite zincirindedir.
Kalıcı Bağlantılar ekranını yeniden kaydetmek ilk test olabilir, fakat kapalı mod_rewrite, yanlış web kök dizini, alt dizin uyuşmazlığı veya Nginx yapılandırmasını düzeltmez. Her ihtimal ayrı doğrulanmalıdır.
Belirti neyi gösterir?
Sorgu biçimindeki URL çalışırken aynı içeriğin okunabilir kalıcı bağlantısı 404 veriyorsa WordPress veritabanı ve içerik çoğunlukla sağlamdır. Web sunucusu okunabilir yolu index.phpüzerinden WordPress’e aktaramıyor olabilir.
Sunucu markalı sade 404, isteğin WordPress’e hiç ulaşmadığını düşündürür. Tema görünümündeki WordPress 404 sayfası ise rewrite işleminin çalıştığını, ancak WordPress’in yolu içerikle eşleştiremediğini gösterebilir.
Alt dizine taşıma örneği
Site kök dizinden /blog/altına taşınır, fakat eski RewriteBaseve WordPress URL değerleri korunur. Ana sayfa açılırken yazı yolları yanlış tabanda değerlendirilip 404 verir. Geçerli kurulum dizinine göre oluşturulan WordPress bloğu ve doğru Site Adresi değerleri sorunu giderir.
Yaygın nedenler
.htaccessdosyasının yanlış web kök dizininde bulunması.- WordPress rewrite bloğunun eksik, bozuk veya eski kurulum yoluna ait olması.
- Dosyanın yazılamaması nedeniyle Kalıcı Bağlantılar ekranındaki değişikliğin kaydedilememesi.
- Apache’de
mod_rewriteveya uygunAllowOverrideayarının kapalı olması. - Üst dizindeki başka bir
.htaccessya da virtual host kuralının isteği önce yakalaması. - Sunucunun Nginx olması ve
.htaccessdosyasını hiç okumaması.
Temel çözüm adımları
- Çalışan sorgulu URL ile 404 veren okunabilir URL’yi aynı içerik için karşılaştırın.
- Etkin
.htaccessdosyasını web kök dizini dışında yedekleyin. - WordPress Adresi, Site Adresi ve kalıcı bağlantı yapısının gerçek kurulum yoluyla uyumunu kontrol edin.
- Kalıcı Bağlantılar ekranını mevcut yapıyı değiştirmeden bir kez kaydedin.
- WordPress’in ürettiği bloğun doğru dosyaya yazıldığını doğrulayıp farklı URL türlerini sınayın.
İleri düzey inceleme
Yazı, sayfa, kategori, sayfalama, feed, REST, yönetim, medya ve bilerek eksik bir slug için test tablosu hazırlayın. Gerçek dosya ve dizinlerin catch-all rewrite kuralına girmediğini kontrol edin.
- Apache hata ve erişim loglarında rewrite döngüsü ya da yanlış dosya yolu arayın.
- Üst dizinlerden WordPress köküne kadar okunabilecek bütün
.htaccessdosyalarını inceleyin. - Alt dizin ve multisite kurulumları için başka siteden kopyalanmış kök kuralları kullanmayın.
- Origin sunucunun beklenen yanıtı verdiğini doğrulamadan CDN önbelleğini temizlemeyi veya geçici bir değişikliği çözüm saymayın.
Riskler ve geri alma
Geniş bir catch-all kuralı statik dosyaları, yönetim yolunu veya aynı dizindeki başka uygulamayı WordPress’e gönderebilir. Sorunu çözmek için tekrar tekrar farklı bloklar yapıştırmak 404’ü 500 hatasına çevirebilir.
Her değişiklikten sonra çalışan ve çalışmaması gereken URL’leri birlikte sınayın. 500, döngü veya erişim kaybı görülürse son çalışan dosyayı hosting dosya yöneticisinden geri yükleyin.
AIOWS nasıl yardımcı olur?
AIOWS Htaccess Düzenleyici
AIOWS Htaccess Düzenleyici, etkin dosyadaki WordPress rewrite bloğunu inceleyip gereken dar düzeltmeyi yapmanıza yardımcı olur. Rewrite bloğundaki düzeltme kaydedilmeden önce oluşturulan yedek, kalıcı bağlantılar yeniden bozulursa dosyanın önceki hâline dönmenizi sağlar.
Modül Nginx yapılandırmasını, kapalı mod_rewritedesteğini veya yanlış virtual host ayarını düzeltemez. WordPress’in ürettiği bloğu gerçek sunucu ve kurulum yolu ile karşılaştırın; site kapanırsa kullanılmak üzere bağımsız hosting erişimini hazır tutun.
AIOWS Htaccess Düzenleyici’yi inceleyinAIOWS planlarını karşılaştırın
İlgili AIOWS yazıları
- WordPress .htaccess Dosyası: Başlangıç Rehberi
- Varsayılan WordPress .htaccess Dosyası Nasıl Yeniden Oluşturulur?
- URL Değişikliğinden Sonra Eski WordPress Slug’ı Nasıl Yönlendirilir?
Sonuç
Sorgu biçimindeki URL çalışıyorsa önce rewrite zincirini inceleyin. Doğru web kökünü, kurulum tabanını ve Apache desteğini doğrulayıp yalnız geçerli WordPress bloğunu yeniden oluşturun.









