当特定URL模式下出现404错误时,Apache会显示默认图像

时间:2016-04-09 14:06:48

标签: apache .htaccess http-status-code-404 url-pattern

在基于纯客户端的Web应用程序中,我需要显示有时不存在的背景图像。当特定的URL模式返回404错误时,是否存在“强制”Apache为图像提供服务的方法?

可能返回404的网址格式为:

http://host/assets/user-images/xxxxx.jpg

我想在哪里投放图片:

http://host/assets/user-images/default.jpg

注意:

我已经使用了.htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [QSA,L]

1 个答案:

答案 0 :(得分:3)

在文件中添加以下内容" /assets/user-images/.htaccess"

RewriteCond %{REQUEST_URI} ^/assets/user-images/(.*)\.jpg$ 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ default.jpg

第一个RewriteCond将检查传入请求是否针对/ assets / user-images /下的jpg文件,第二个RewriteCond使用-f选项将检查所请求的文件是否存在。如果它不存在,RewriteRule将提供默认图像。 最终用户仍会看到原始图片的网址,但会提供默认图片。 如果原始图像文件存在,则不会执行此规则。