WordPress kurulu sayfalarda şifreli altdizin hatası
WordPress kurulu bir sayfanın alt klasörlerinde şifreli alt dizin oluşturmak istediğinizde; Apache web sunucusu, WordPress altındaki .htaccess dosyasını öncelikli olarak uygulamaya aldığı için şifre kontrolü çalışmamaktadır. Benim başıma geldiğinde, hosting servisinin bir sorunu zannetmiştim. Böyle bir sorun ile karşılaştıysanız ufak bir ayarlama ile bu sorunu çözebilirsiniz.
WordPress ana dizini altındaki normal bir .htaccess dosyası aşağıdaki şekildedir.
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Sizin .htaccess dosyanız biraz değişik olabilir, ama sorun değil. Soruna yol açan bu kodu aşağıdaki şekilde bir ekleme ile şifreli sayfalarda sorun açmayacak bir koda çevireceğiz.
# Şifreli altdizini dikkate alma ErrorDocument 401 /%{REQUEST_URI}/hata.html ErrorDocument 403 /%{REQUEST_URI}/hata.html # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Gördüğünüz gibi .htaccess dosyasının başına eklediğimiz kod ile artık şifreli altdizinlerimiz (Password Protected Subdirectories) artık düzgün çalışıyor.