我有一个WordPress网站,其永久链接设置为/%category%/%postname%.html。当我访问一个不存在的页面时,比如说example.com/non-existing-post,Wordpress 301重定向到主页,而不是显示404.php页面,该页面位于主题包中。下面是htaccess代码;
AuthName "protect"
AuthUserFile "/home/sitename/.htpasswds/public_html/passwd"
suPHP_ConfigPath /home/sitename/public_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
当我尝试禁用自定义永久链接结构时,它会返回错误404,但不会返回我偏好的404.php页面(我猜是正常的Apache错误)。
关于这个“bug”有很多类似的讨论,请看下面的链接。所有这些似乎都没有得到解决。 :(
http://wordpress.org/support/topic/404-pages-not-working-1
http://wordpress.org/support/topic/404-pages-not-working
什么导致Wordpress自动301重定向应该显示404错误的页面?
更新(2013年2月21日) - 问题仍然存在。我认为这是wordpress核心中的一个错误,涉及“非常永久链接”的重定向。
我仍然想解决这个问题,因为我有一些Wordpress网站有这个,我认为其他人在他们的网站中遇到同样的错误。