nginx设置图片防盗链

42 篇文章 0 订阅
37 篇文章 0 订阅

如果服务器的图片被别的网站盗链,将影响服务器的带宽以及访问速度,这时我们就需要设置图片文件或视频文件的防盗链功能;


防盗链功能,简单来说就是你可以直接访问该资源,但是不能将我的资源链接放到你自己的服务器上让别人访问,尤其是图片或视频这种比较大的文件,容易导致服务器响应很慢。

好,以下是一些配置:


首先是工作的服务器,IP地址为:192.168.1.199,上面有一个图片文件为 /images/button.png, 这里的服务器用IP访问,实际中肯定是以域名访问才对的。

这里有两台测试服务器,一台是windows系统的apache服务器,IP地址是192.168.1.30,一台是linux系统的nginx服务器,域名是:shiyifei.nethospital_admin.neibu


首先写一个测试脚本 referImg.html,内容如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>测试防盗链功能</title>
<meta name="description" content="">
<meta name="keywords" content="">
<link href="" rel="stylesheet">
</head>
<body>
    <img src="http://192.168.1.199/images/button.png" />
</body>
</html>

分别将该文件放在192.168.1.30以及shiyifei.nethospital_admin.neibu的根目录下,

然后在192.168.1.30电脑上分别访问 http://192.168.1.199/images/button.png   http://127.0.0.1:6000/referImg.html   http://shiyifei.nethospital_admin.neibu


我们发现图片都是可以访问到的。 192.168.1.30上是wamp环境,端口6000,因此可以直接用127.0.0.1:6000来请求。


然后我们在192.168.1.199服务器上设置nginx防盗链,设置如下:



配置节点是在 http->server下


配置成功以后,我们检查一下配置文件是否有效

/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/etc/nginx.conf
nginx: the configuration file /usr/local/nginx/etc/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/etc/nginx.conf test is successful

配置文件有效,然后重新加载一下配置文件

/etc/init.d/nginx reload

然后再分别访问一下上面的三个地址:

具体网站响应如下图所示:

直接访问ok


在白名单的服务器上访问也是ok的





我们可以看到,在shiyifei.nethospital_admin.neibu这个服务器上访问时是允许的,这是因为我们将shiyifei.nethospital_admin.neibu加入了白名单;

而在192.168.1.30本机的apache服务器上访问时,却返回了403错误,因为没有将192.168.1.30设置为白名单。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值