我有一个指向其自己域的子目录,所以我希望它有自己的404页面。子目录中的.htaccess读取:
ErrorDocument 404 /subdirectory/404.html
我觉得这应该有用,但是有问题。父目录安装了wordpress,因此.htaccess如下
# Use PHP5.4 Single php.ini as default
AddHandler application/x-httpd-php54s .php
# 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
# Set PHP handler to application/x-httpd-phpbeta on Mon Jan 11 15:10:53 MST 2016.
如果子目录中有index.php,则用作404页面。否则,我会得到500错误,无论子文件夹中的.htaccess是否存在。是什么阻止了我的.htaccess工作?
答案 0 :(得分:0)
您需要在RewriteEngine On
中添加/subdirectory/.htaccess
行以覆盖父目录的重写规则。您的/subdirectory/.htaccess
会变成这样:
ErrorDocument 404 /subdirectory/404.html
RewriteEngine On