Nginx 防盗链配置
程序员文章站
2022-07-07 23:19:08
...
网站写文章时,可能为了增加文章的生动性,我们常常加入图片来说明,或者更加直观的展示的问题。但是图片被其他网站乱应用,可能会增加额外流量的费用。所以我们为了避免这种情况,就给网站加上图片防盗链功能。
网站是用的 Nginx,所以我们介绍在 Nginx 如何配置网站图片的防盗链。防盗链功能是基于 HTTP 协议的 Referer 机制,通过 referer 跟踪来源,对来源就行对比。
配置代码
location ~* (gif|jpg|jpeg|png)$ {
expire 30d;
valid_referers none blocked *.sin2.cn;
if ($invalid_referer) {
rewrite ^/ https:://www.sin2.cn
}
}
代码解释
第一行:匹配对应的图片类型
第二行:属于配置文件中location作用域中原有的图片缓存时间配置
第三行:valid_referers 指定资源访问通过以下几种方式为合法,可理解设置的白名单。
关键字 | 描述 |
---|---|
none | 直接通过URL访问,无referer值的情况 |
blocked | referer值被防火墙修改 |
servername | 指定资源在合法的域名白名单中可以被引用,支持*通配符,多个域名使用空格符分开 |
第四行:匹配不到对应的referer来源域,则跳转到配置的地址上去
注意
- 不能完全的防止图片被使用,可以通过其他方式得到图片
- 站点使用了CDN,nginx配置的防盗链可能不会起作用,可以在CDN管理平台配置。
上一篇: c语言中令人迷惑的局部静态变量
推荐阅读
-
关于php7+nginx的配置(osx环境)
-
Memcached windows系统上nginx+memcached+tomcat的负载均衡
-
为 Jenkins 配置 .NET 持续集成环境
-
CentOS 7.0 安装配置LAMP服务器方法(Apache+PHP+MariaDB)
-
Memcached 安装配置
-
WINDOWS + WAMP + Zend Framework 配置步骤分享
-
nginx静态资源文件无法访问,403 forbidden错误
-
Linux 配置 unixODBC 访问 Oracle 说明 oracle培训oracle学习cuug培训ocpcom
-
nginx+PHP配置
-
Hive命令行及参数配置