如何在图片不存在时候给一张默认图片呢?通过程序执行就行呗,程序有时候可能考虑不到这个问题,每次去判断图片是否存在也太麻烦了。最简单的就是通过图片配置实现。nginx如何实现图片不存在就给一张默认图片呢?这里主要通过404错误实现。在页面出现404 error时可以给一个默认页面,所以一样滴在图片不存在时也可以给一张默认的图片。以图片为主的网站,更要配置默认显示的图片了。下面来看看我的小站是如何配置的。
[shell]
location /images/ {
alias /web/letterforu/Public/images/;
error_page 404 = /Public/images/default.jpg;
}
[/shell]
/web/letterforu/Public/images/ 下我放了两张图片:
-rw-rw-r– 1 svnuser svnuser 8607 Nov 16 07:59 cat.jpg
-rw-rw-r– 1 svnuser svnuser 2555 Nov 16 07:59 default.jpg
cat.jpg是一只猫,default.jpg是我的头像。
我们访问下试试
www.letterforu.com/images/cat.jpg
www.letterforu.com/images/default.jpg
我们随便访问一张图片www.letterforu.com/images/xo.jpg
另外参考:
if (!-f $request_filename) { #原图片不存在,返回前当目录下的缺省图片
rewrite ^(/uploads/.*/).*$ $1default.jpg break;
}
error_page 404 =200 /default.jpg; #当目录下的缺省图片不存在时,返回一个指定的缺省文件,确保存在此文件,否则可能进入死循环 注意(404 =200)404后有一个空格,要不然配置会报错,这样的配置是把客户端看到的404 改为200