Nginx防盗链设置
?对于图片来说,网站,如果想使用B网站的图片,可以直接写上B网站图片的链接地址,或者将B网站的图片通过右键另存为的方式下载到本地,然后在页面上使用。如果B网站不想一个网站这么干了,那么B网站可以采取防盗链的措施来干这个工作,结果就是,一个网站想请求所需要的资源,通过url的方式,获取的可能不是原来的图片了,出现404或者别的图片替代了。如果通过浏览器直接打开图片url,那么仍然有可能显示404,这就是防盗链。
?下面我们先进行盗链的操作过程:就是如何做盗链网站——盗取别人(其他服务器)的图片
?环境部署准备:一台手工编译完好的nginx服务器(Centos7),一台做盗链的win10虚拟机,一台用作测试的win10-1主机
1. nginx服务器上的nginx服务为开启状态
<代码类=" language-shell "> [root@localhost nginx-1.12.2] # netstat natp | grep nginx tcp 0 0 0.0.0.0:80 0.0.0.0: * 18676/nginx听:主人 代码>
2. nginx服务器上的站点目录下有0. jpg图片并且将其相对路径写入到index . html文件中
<代码类=" language-shell "> [root@localhost html] # ls 0. jpg 50 x。html index . html [html] root@localhost # vim index . html [html] root@localhost # sed - n 15便士的index . html & lt; img src=" https://www.yisu.com/zixun/0.jpg "/比; 代码>
3. nginx服务器上配置域名解析:参考博客:nginx虚拟主机配置第一个步骤,然后在本地火狐浏览器中验证
<代码类=" language-shell "> [root@localhost html] # netstat natp | grep命名 tcp 0 0 192.168.68.145:53 0.0.0.0: * 72573/叫听 tcp 0 0 127.0.0.1:53 0.0.0.0: * 72573/叫听 tcp 0 0 127.0.0.1:953 0.0.0.0: * 72573/叫听 tcp6 0 0:: 1:53::: * 72573/叫听 tcp6 0 0:: 1:953::: * 72573/叫听 代码>
4. win10和win10-1虚拟机上都将网络dns域名服务器地址设置为nginx服务器的ip地址并且在命令行验证是否正常解析
5。在做盗链的win10虚拟机上进行如下配置:
以上就是模拟盗链配置的过程了。
开始验证盗链是否设置成功
在win10上先进行测试:输入域名也可以
win10的IP地址:
win10-1上进行测试
以上就是盗链配置的操作过程啦!
盗链是可耻的,因为这相当于是“借鸡使egg"了,不仅盗取别人的资源,还占用别人的服务器带宽,从而使自己获益。
因此我们需要对此进行防护,也就是进行防盗链设置,具体操作过程如下:
<代码类=" language-shell "> [root@localhost html] # vim/usr/local/nginx/conf/nginx.conf [html] root@localhost # sed - n/usr/local/nginx/conf/nginx.conf 56岁的61 p ~ * \位置。(jpg | gif | swf) $ { valid_referers没有屏蔽* .lokott.com lokott.com; 如果(invalid_referer美元){ 重写^/http://www.lokott.com/error.png; } } [html] root@localhost # ls 0. jpg 50 x。html错误。png index . html # vim/usr/local/nginx/conf/nginx.conf root@localhost html [html] root@localhost # sed - n/usr/local/nginx/conf/nginx.conf 56岁的61 p ~ * \位置。(jpg | gif | swf) $ { valid_referers没有屏蔽* .lokott.com lokott.com; 如果(invalid_referer美元){ 重写^/http://www.lokott.com/error.png; } } # vim/etc/init. root@localhost htmld/nginx//编写nginx控制脚本 [html] root@localhost #猫/etc/init.d/nginx # !/bin/bash # chkconfig: 20 - 99 描述:Nginx服务控制脚本 学监="/usr/地方/nginx/sbin/nginx” PIDF="/usr/地方/nginx/日志/nginx.pid” “1美元” 开始) 美元掠夺 ;; 停止) 杀- s退出美元(猫PIDF美元) ;; 重启) 0美元停止 $ 0开始 ;; 重新加载) 杀- s玫瑰(猫PIDF美元美元) ;; *) 回声”用法:$ 0{启动|停止| |重启重载}” 出口1 esac 退出0 [html] root@localhost # nginx停止服务 [html] root@localhost #服务nginx的开始Nginx防盗链配置实例——从盗链模拟到防盗链设置流程细解