CentOS如何设置nginx防止自己的网站被盗链

Admin 2023-05-05 群英技术资讯 331 次浏览

很多朋友都对“CentOS如何设置nginx防止自己的网站被盗链”的内容比较感兴趣,对此小编整理了相关的知识分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获,那么感兴趣的朋友就继续往下看吧!

一、防盗链介绍

1.什么是防盗链

  • 简单的说,就是某些不法的网站,通过在其自身网站程序里为经许可非法调用其他网站资源然后在自己的网站上显示这些调用的资源,达到了填充自身网站显示的效果,但是浪费了调用资源网站的网站流量,造成其他网站的带宽及服务压力吃紧,甚至宕机。

二、配置防盗链

1.配置三个个站点

[root@lnmp ~]# cd /application/nginx/
[root@lnmp nginx]# cat conf/nginx.conf 
worker_processes  1;
events {
    worker_connections  1024;
    use epoll;
}
http {
    server_tokens off;
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  www.liang.com;
            root   html/www;
            index  index.php index.html index.htm;
        location ~ \.php$ {
            root           html/www;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;
                    }        
        }

        server {
        listen       80;
        server_name  bbs.liang.com;
        location / {
            root   html/bbs;
            index  index.html index.htm;
                }
        }
        server {
        listen       80;
        server_name  blog.liang.com;
        location / {
            root   html/blog;
            index  index.html index.htm;
                }
        }
}

2.测试是否能访问

[root@lnmp nginx]# curl www.liang.com/index.html 
https://blog.csdn.net/liang_operations/
[root@lnmp nginx]# curl bbs.liang.com 
bbs
[root@lnmp nginx]# curl blog.liang.com
blog

3.模仿环境配置

3.1www.liang.com为被盗
[root@lnmp nginx]# mkdir html/www/ima 
[root@lnmp nginx]# rz
rz waiting to receive.
 zmodem trl+C ȡ

  100%     277 KB  277 KB/s 00:00:01       0 Errors
[root@lnmp nginx]# mv timg.jpg html/www/ima/

3.2bbs.liang.com盗取www的链接
[root@lnmp nginx]# cat html/bbs/index.html 
<img src="http://www.liang.com/ima/timg.jpg">

3.3访问测试

4.www配置防盗

[root@lnmp nginx]#vi conf/nginx.conf
    server {
        listen       80;
        server_name  www.liang.com;
            root   html/www;
            index  index.php index.html index.htm;
        location ~ \.php$ {
            root           html/www;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;
                    }
        location ~* \.(gif|jpg|png|swf|flv|bmp)$ {
            valid_referers none blocked www.liang.com;
            if ($invalid_referer) {
                rewrite ^/ http://blog.liang.com/ima/b.jpg;
                  }
           }        
      }
######
代码详解:
第一行: location ~* \.(gif|jpg|png|swf|flv|bmp)$ 
其中“gif|jpg|png|swf|flv|bmp”设置防盗链文件类型,自行修改,每个后缀用“|”符号分开!
第二行: valid_referers none blocked www.liang.com;
就是白名单,允许文件链出的域名白名单,自行修改成您的域名! 可以使用子域名,域名与域名之间使用空格隔开!
第五行:rewrite ^/ http://blog.liang.com/ima/b.jpg;
这个图片是盗链返回的图片,也就是替换盗链网站所有盗链的图片。这个图片要放在没有设置防盗链的网站上,因为防盗链的作用,这个图片如果也放在防盗链网站上就会被当作防盗链显示不出来了,盗链者的网站所盗链图片会显示X符号。
这样设置差不多就可以起到防盗链作用了。

5.配置blog

[root@lnmp nginx]# ll html/blog/ima/         
total 12
-rw-r--r--. 1 root root 11988 Aug  9  2018 b.jpg

6.网页测试


到此这篇关于“CentOS如何设置nginx防止自己的网站被盗链”的文章就介绍到这了,更多相关内容请搜索群英网络以前的文章或继续浏览下面的相关文章,希望大家以后多多支持群英网络!
群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服