nginx配置图片防盗链

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${
    expires 30d;
    access_log off;
    valid_referers none blocked *.lee.com  *.xing.com  ;
    if ($invalid_referer){
        rewrite ^/ http://invalid.com/images/invalid.png;
     #return 403;
    }
}

expires : 图片的客户端浏览器的缓存时间。

access_log : 不记录访问日志。

valid_referers : 指定有效的referers,nginx防盗链是根据http头中的referer来判断的。

none : 无referer头,即是直接访问图片的url,可以选择禁止。

blocked : 指定允许访问的域名,支持域名前缀通配符*。

if :  无效的referer返回防盗链图片,或者403。

注意问题:

如果对全站执行防盗链,要把配置加到HTTP{}部分,如果对单独域名就放到server{}部分。

返回防盗链图片的域名(上例中的invalid.com),需要没有限制防盗链规则,否则不能正常返回图片,我一开始就晕了,lee.com配置了防盗链,还用lee.com返回防盗链图片,怎么也显示不出来。

时间: 2024-08-29 16:26:37

nginx配置图片防盗链的相关文章

防盗链Nginx设置图片防盗链,设置无效的请仔细看红字

*******************************************************************切记,替换的图片地址要使用没有防盗链的网站图片,否则由于替换的图片其实也处于防盗链情况下,会造成仍旧无法显示设置的图片.******************************************************************* 一.全站图片防盗链 在/usr/local/nginx/conf/nginx.conf文件要添加防盗链的ser

nginx服务器图片防盗链的方法

nginx服务器图片防盗链的方法<pre> location ~* \.(gif|jpg|png|jpeg)$ { expires 30d; valid_referers *.shuchengxian.com www.shuchengxian.com; if ($invalid_referer) { rewrite ^/ http://www.shuchengxian.cn/404.jpg; } }</pre>代码解释: <pre>//其中“gif|jpg|jpeg|p

Nginx实现图片防盗链(referer指令)

什么是图片盗链   每张图片在浏览器中都有对应的图片地址,在浏览器中输入这个地址是可以直接拿到图片. 图片盗链,就是盗用者在他的站上需要显示我们的图片,他没有把图片拿下来,放到他的服务器上, 而是直接就用我们的,图片地址,来请求到我们的服务器来拿图片,流量产生在我们这边. referer referer指令通过检测访问图片的来源,来做出一些控制. 图片访问的来源 通过谷歌/百度访问 通过浏览器直接访问 本站点的访问 来自非法的域名访问 referer nginx 模块 ngx_http_refe

Nginx配置:防盗链、访问控制、解析PHP以及代理

一.Nginx防盗链 防盗链是指一个网站的资源(图片或附件)未经允许在其它网站提供浏览和下载,尤其热门资源的盗链,对网站带宽的消耗非常大,设置防盗链以节省资源. 1.修改虚拟主机配置文件 [[email protected] vhost]# vim linuxtest.conf server { listen 80; server_name linuxtest.com; index index.html index.htm index.php; root /data/wwwroot/linuxt

92.Nginx配置:防盗链、访问控制、解析PHP以及代理

一.Nginx防盗链 防盗链是指一个网站的资源(图片或附件)未经允许在其它网站提供浏览和下载,尤其热门资源的盗链,对网站带宽的消耗非常大,设置防盗链以节省资源. 1.修改虚拟主机配置文件 [[email protected] vhost]# vim linuxtest.conf server { listen 80; server_name linuxtest.com; index index.html index.htm index.php; root /data/wwwroot/linuxt

Nginx修改配置实现图片防盗链

一般情况下,防盗链是针对软件下载和图片的,由于一般的站点不提供资源下载,所以本文主要是针对图片的防盗链 1.如果对全站图片做防盗链,至少需要一个另外的域名存放指向图片.因为如果对全站图片做了防盗链,包括盗链提示图片在内的所有图片都不可能显示. 此类情况修改 /usr/local/nginx/conf/nginx.conf 文件 2.对单独域名配置图片防盗链,个人比较推荐,一是便于控制,二是可以重新创建一个域名在同服务器上用来存放盗链提示图片. 此类情况修改 /usr/local/nginx/co

Nginx图片防盗链的方式

location ~* \.(gif|jpg|jpeg|png|ico)$ { valid_referers none blocked www.oschina.net oschina.net; if ($invalid_referer) {     rewrite ^/ /daolian.jpg; } access_log off; root /opt/web; expires 5d; break; 第一行:gif|jpg|jpeg|png|ico 表示对gif,jpg,jpeg,png,ico

Linux之nginx优化与防盗链

Linux之nginx优化与防盗链 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为"engine X",是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发. Nginx以事件驱动(epoll)的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理.负载平衡.但是Nginx并不支持cgi方式运行,原因是可以减少因

nginx secure_link下载防盗链

下载服务器上有众多的软件资源, 可是很多来源不是本站,是迅雷.flashget, 源源不断的带宽,防盗链绝对是当务之急. 使用来源判断根本不靠谱,只能防止一些小白站点的盗链,迅雷之类的下载工具完全无效,如果你是nginx的话,使用secure link完美解决这个问题,远离迅雷.本文仅用于下载服务器,不适用于图片防盗链. 1. 安装nginx 默认情况下nginx不会安装secure_link模块,需要手动指定,配置参数如下 # ./configure --with-http_secure_li