Zaman zaman web sitelerimizde güncellemeler yapmaktayız. Kimi zaman bu güncellemelerde harici bir eklenti ile yapıldığında .htaccess dosyamızı bozabilir. Bu durum da haliyle bir çok hataya sebebiyet verebilmektedir. Bunlardan en başlıcalarını genel olarak sıralayacak olursak,
- URL adresleriniz düzgün çalışmayabilir
- SSL sertifikanız düzgün yapılandırılmadığı için yönlendirilmiyor olabilir
- Dosya yollarından dolayı bazı sayfalara erişilmiyor olabilir
- Wp-admin bilgilerinize giriş yaptığınızda sanki css gibi alanlar yok sayılmış gibi bir ekranla karşılaşabilirsiniz
- Başta 500 olmak üzere bir çok hata kodu ile karşılaşabilirsiniz.
Bu denli hataların başlıca sebebi htaccess dosyasıdır fakat %100 bu dosyadan kaynaklanıyor diyemeyiz elbette. Bunu anlamanın en kolay yolu htaccess dosyanızı güncellemektir.
Bu Makalede Hangi Konular Var?
WordPress Standart Htaccess Kodları
Wordpress sisteminizi web sitenize ilk kurduğunuz da standart bazı kodlar kullanılmaktadır. Hatta Wordpress ekibi bu alanların güncellenmemesi gerektiğini özellikle vurgulamaktadır. Deneyeceğimiz ilk yöntem bütün kodları silip standart kodları yerleştirmektedir.
Başlangıçta kullanılan kodlar;
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Birden Fazla WordPress Sitesi Kurulu İse
Bazı zamanlar aynı web sitesinde birden fazla WordPress sistemi kurmak isteyebilirsiniz. Örneğin bir klasör içerisinde başka bir tema veya başka bir sistem kullanabilirsiniz. Bu durumda standart kodlar aşağıdaki gibi olmalıdır;
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
WordPress’iniz Subdomaine Kurulu İse
Deneme yanılma yapmak için bir çok insan subdomaine (alt etki alanına) kurulum yapmayı tercih etmekte. Bu durumda ise standart kodlarımız aşağıdaki gibi olmaktadır;
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
Belirli Bir Sayfanın Başlangıçta Açılması
Canınız sıkıldığında veya yeni bir tema denemeye çalışıyor olabilirsiniz. Bunların hepsini geçelim eğer bakım modu uygulamak istiyorsanız ve bunun için belli bir sayfanın otomatik olarak açılıp kullanıcıların bu ekranı görmesini istiyorsanız aşağıdaki kodu uygulayabilirsiniz.
DirectoryIndex index.php index.html /index.php
Bu yazımızda genel olarak WordPress sitemi için kullanabileceğiniz bazı kodları paylaştık. Elbette htaccess kodları bunlarla sınırlı değil. Fakat istek olması halinde bütün kodları paylaşabiliriz.