做运维的朋友经常会有一些烦恼,比如网站总是被人抄袭,比如网站总是被人引用上面的图片,虽然一张图两张图,并不耗费很多流量,但一旦引用的人多了,这个还是比较废流量的。
防盗链就是禁止其他网站引用自己网站资源而做的一系列设定,优点就不需要说了,绝多数就是防止资源浪费,特别是有宽频、流量限制的空间如果不做一些 限制可能就光引用自己网站图片、视讯等等资源可能会消耗很大一部分流量。本文就简单的说一下在 nginx 站群服务器上如何做防盗链设定。
第 1 步:下载 nginx 网站配置档案。
有些网友可能是直接到站群服务器中使用 vi 或 ee 编辑器,另外网站配置有些可能是在 nginx.conf 档案中或是在 vhost 目录下,具体要看 nginx.conf 档案是如何配置的了。
第 2 步:新增以下程式码,并储存。
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 30d;
access_log off;
valid_referers none blocked *.85v5.com *.91aiche.cn *.juuzhong.com;
if ($invalid_referer){
rewrite ^/ http://centoscn.com/images/logo.gif;
}
}
第 3 步:重启 Nginx
把储存网站配置档案上传并覆盖,到终端执行/etc/init.d/nginx reload 重新启动 nginx 即可生效。
配置解释
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 30d;
#在客户浏览器 WordPress 加速缓存 30 天
access_log off;
#以上副档名档案 (gif|jpg|jpeg|png|bmp|swf) 不写入日志档案中。
valid_referers none blocked *.85v5.com *.91aiche.cn *.juuzhong.com;
#valid_referers none blocked 允许访问的域名站点,后台就是跟著域名多个域名空格隔开。
#none 匹配没有 Refer 的访问,简单的说就是直接用 URL 访问这些副档名的资源。
#blocked 支援域名字首。
#除了允许直接访问的域名外,其他域名直接访问就直接显示下面的这种图片。
if ($invalid_referer){
rewrite ^/ http://centoscn.com/images/logo.gif;
}
}
这样设定过后,别人想要引用你网站里面的图片时候,就会发现,引用出来的图片都不是想要的了。