Wordpress 404适用于非现有页面,但不适用于非现有图像

时间:2018-04-02 10:24:33

标签: php wordpress .htaccess

http://localhost/wordpress/not-found-page.php =>转到404未找到的网页 http://localhost/wordpress/not-found-image.png =>转到服务器404错误页面

server error page

我在.htaccess

中添加了此代码
ErrorDocument 404 /index.php?error=404

以下是当前的.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

请指导。

1 个答案:

答案 0 :(得分:1)

从配置中删除'fastcgi_intercept_errors'参数(如果存在)。这是不必要的,因为'error_page'声明了404错误,这应该由index.php处理,这将触发PHP-FPM来处理它,而WordPress会呈现你的主题的404页面。

如果这不起作用,那么:

在.htaccess中添加以下内容:

RewriteCond %{REQUEST_URI} \.(jpg|jpeg|gif|png|ico)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .*$ /index.php?error=404 [R]

这将重定向png / jpeg / gif / ico文件如果/index.php?error=404不存在