RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} ! http://www.example.com [NC]
RewriteCond %{HTTP_REFERER} ! http://www.google.cn [NC]
RewriteCond %{HTTP_REFERER} ! http://www.baidu.com [NC]
RewriteRule .*\.(gif|jpg)$ http://www.example.com/default.jpg [R,NC,L]
该配置说明说下:
- RewriteCond %{HTTP_REFERER} !^$ [NC]
允许 HTTP_REFERER 为空时访问,即允许用户在浏览器地址栏中直接输入图片地址时显示图片。一般来说这个选项是可选的,建议这样设置。如果将 HTTP_REFERER 强制限制不能为空,那么当用户通过代理服务器访问时,可能会导致一些问题。
- RewriteCond %{HTTP_REFERER} ! http://www.example.com [NC]
设置允许访问的 HTTP_REFERER 来源,包括自身站点,以及 Baidu、Google、Yahoo!等
- RewriteRule .*\.(gif|jpg)$ http://www.example.com/default.jpg [R,NC,L]
设置图片被盗链时用于替换的图片,如果有图片被盗链,显示的是 default.jpg。注意,默认图片所在的路径最好跟配置文件不在同一目录下,图片越小越好。如果不想设置替换图片,可以使用下面的语句:
RewriteRule .*\.(gif|jpg)$ - [F]
NC、R、L、F 标记解释
NC:不区分大小写
R: 强制重定向
L:立即停止重写操作
F:强制禁止URL