我的WP站点的重定向设置如下:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule . /index.php [L]
</IfModule>
适用于所有网址。但是,如果我访问“ /file/does/not/exist.php ”这样的网址,则会显示WP 404错误页面。我不希望该请求到达WP,它应该显示来自apache的404。
所以“ / file / does / not / exists ”应该转到 WP 404页面(确实如此)但是“ / file / does / not / exist.php “应该是来自Apache的 404 。
答案 0 :(得分:1)
与!-f
RewriteCond(“不是文件”)的那种冲突。丢失的脚本不是文件,因此它满足重写条件。您可能必须专门检查文件名是否包含“.php”而不是重写为wordpress。但是如果有人试图访问其他文件扩展名也应该是404呢?