nginx 设置图片防盗链

作者:Shine 发布于:2017-02-10 08:38:00 浏览:1105次 分类:PHP

nginx 设置图片防盗链

nginx模块ngx_http_referer_module通常用于阻挡来源非法的域名请求.我们应该牢记,伪装Referer头部是非常简单的事情,所以这个模块只能用于阻止大部分非法请求.我们应该记住,有些合法的请求是不会带referer来源头部的,所以有时候不要拒绝来源头部(referer)为空的请求. 

location ~* \.(gif|jpg|png|bmp)$ {
    valid_referers none blocked *.jumoshen.com server_names ~\.google\. ~\.baidu\.;
    if ($invalid_referer) {
        return 403;
        #rewrite ^/ https://www.jumoshen.cn/403.jpg;
    }
}

以上所有来至jumoshen.cn和域名中包含google和baidu的站点都可以访问到当前站点的图片,如果来源域名不在这个列表中,那么$invalid_referer等于1,在if语句中返回一个403给用户,这样用户便会看到一个403的页面,如果使用下面的rewrite,那么盗链的图片都会显示403.jpg。如果用户直接在浏览器输入你的图片地址,那么图片显示正常,因为它符合none这个规则. (同样,如果你不想直接在浏览器输入看见图片的话 去掉none blocked 就好 此处不建议 我只是做个例子)

https://www.jumoshen.cn/public/images/a.jpg  类似这样 写的匆忙 不足之处请联系本人qq 1173240549

标签: nginx 防盗链 linux
声明:文章内容由作者原创或整理,转载请标明出处!
暂留位置!--请勿随意修改