WordPress ana sayfası açılırken yazı, sayfa, ürün veya özel içerik URL’lerinin 404 vermesi çoğunlukla rewrite kurallarının yazılmaması, `.htaccess` dosyasının okunmaması, yanlış alt klasör yolu veya eklentilerin yönetilen WordPress bloğunu bozmasından kaynaklanır.
404 Not Found
The requested URL was not found on this server
WordPress permalinks not working
Rewrite rules flushed
.htaccess is not writableWordPress ana sayfası açılırken yazı, sayfa, ürün veya özel içerik URL’lerinin 404 vermesi çoğunlukla rewrite kurallarının yazılmaması, `.htaccess` dosyasının okunmaması, yanlış alt klasör yolu veya eklentilerin yönetilen WordPress bloğunu bozmasından kaynaklanır.
Apache, LiteSpeed, Plesk proxy veya NGINX-only yapıyı ayırmadan `.htaccess` sonucu beklemeyin.
Mevcut dosyayı tarihli yedekleyin; Apache/LiteSpeed hata kaydındaki directive ve satırı bulun.
Redirect, rewrite, header ve erişim kurallarını aynı anda topluca değiştirmeyin.
curl ile status, Location, Content-Type ve redirect sayısını ölçüp cache katmanlarını ayrıca kontrol edin.
WordPress yönetilen rewrite bloğunu eklenti kodlarıyla rastgele karıştırmayın.
Anlamı: Front-controller rewrite uygulanmıyor.
Muhtemel neden: WordPress bloğu eksik veya mod_rewrite kapalı.
Anlamı: WordPress dosyaya otomatik kural yazamıyor.
Muhtemel neden: Sahiplik veya dosya izni.
Anlamı: Ürün rewrite kuralları güncel değil.
Muhtemel neden: Slug değişimi, migration veya cache.
Anlamı: Yeni içerik türünün rewrite kaydı yenilenmemiş.
Muhtemel neden: Plugin/theme activation sonrası flush yok.
Anlamı: RewriteBase veya index.php yolu kök kurulum gibi.
Muhtemel neden: WordPress `/blog` altında.
Anlamı: Network türüne uygun kurallar yok.
Muhtemel neden: Subdomain/subdirectory kuralları karışmış.
Anlamı: Cache katmanı eski route sonucunu tutuyor.
Muhtemel neden: Object/page/CDN cache.
Anlamı: WordPress rewrite NGINX `try_files` ile yapılmalı.
Muhtemel neden: NGINX-only hosting.
Bu ifadeyle eşleşen kayıt bulunamadı.
wp rewrite flush --hardWP-CLI ile rewrite kurallarını yeniler ve desteklenen ortamda `.htaccess` dosyasını günceller.
wp rewrite structure && wp rewrite list --format=table | head -n 40Aktif permalink yapısını ve ilk rewrite kurallarını gösterir.
stat -c '%a %U:%G %n' .htaccess wp-config.php index.php 2>/dev/null || stat -f '%Lp %Su:%Sg %N' .htaccess wp-config.php index.phpWordPress kritik dosyalarının sahiplik ve izinlerini gösterir.
apachectl -M 2>/dev/null | grep rewriteApache rewrite modülünün yüklü olup olmadığını kontrol eder.
curl -sS -o /dev/null -w 'HTTP:%{http_code} Final:%{url_effective}\n' -L https://example.com/ornek-yazi/Bir permalink URL’sinin HTTP sonucunu gösterir.
wp option get home && wp option get siteurl && wp option get permalink_structureHome, Site URL ve permalink yapısını gösterir.
RewriteRule ^ index.php [L]<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>RewriteBase /
RewriteRule . /index.php [L]RewriteBase /blog/
RewriteRule . /blog/index.php [L]RewriteRule . /index.php [L]RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]RewriteEngine On
RewriteRule . /index.php [L]location / {
try_files $uri $uri/ /index.php?$args;
}Kalıcı bağlantı kaydı, özel post type ve ürün slug’ları birlikte incelenmelidir.
public_html içindeki WordPress root ve LiteSpeed cache kuralları önemlidir.
WordPress alt dizin veya subdomain üzerinde olabilir; NGINX-only ise `.htaccess` etkisizdir.
Hayır. NGINX `.htaccess` dosyalarını okumaz. Kuralın `server` veya `location` yapılandırmasına çevrilmesi gerekir.
Genellikle hayır; Apache `.htaccess` dosyasını istek sırasında değerlendirir. Ancak sunucu VirtualHost, modül veya AllowOverride değişikliğinde reload/restart gerekir.
Mevcut dosyanın tarihli yedeği alınmalı, aktif document root doğrulanmalı ve değişiklik staging veya düşük trafikli zamanda test edilmelidir.
cPanel’de çoğunlukla `public_html`, Plesk’te `httpdocs` içindedir; addon domain ve subdomainlerin document root’u farklı olabilir.
LiteSpeed Apache uyumluluğu sayesinde kuralların büyük bölümünü destekler; bazı modül ve handler davranışları farklı olabilir.
Apache/LiteSpeed error log içindeki tam directive ve satır kaydıdır. Dosyayı rastgele silmek yerine loga göre geri alınmalıdır.
Alan adı, document root, proxy, WordPress ve sunucu yapısı doğrulanmadan doğrudan eklenmemelidir. Örnekler uyarlanıp test edilmelidir.
cPanel, Plesk, LiteSpeed, WordPress, özel PHP ve WISECP yapılarında yönlendirme, rewrite, CORS, erişim ve 500 hatalarını loglarla birlikte inceliyoruz.