在文档根目录WordPress 有有这个.htaccess
# 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
一个非WordPress目录以404“WordPress”找不到“页面出现。该目录有一个基本的auth .htaccess
AuthUserFile /home/foo/.htpasswd
AuthName "FOO Admin"
AuthType Basic
<Limit GET>
require valid-user
</Limit>
RewriteEngine off
将RewriteRule . /index.php [L]
更改为RewriteRule ./ /index.php [L]
解决了问题。
为什么要修复它?它是否告诉mod_rewrite不要查看当前目录(。)而是查看子目录(./)?
我真的想更清楚地理解这个过程。
PS我已经将RewriteEngine off
留在了这篇文章中,因为我在auth htaccess中尝试了它 - 我发现无论是在auth之前还是之后都无关紧要。它似乎没有任何效果。