加入收藏 | 设为首页 | 会员中心 | 我要投稿 吕梁站长网 (https://www.0358zz.com/)- 行业物联网、运营、专有云、管理运维、大数据!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

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

发布时间:2024-01-08 07:58:11 所属栏目:Linux 来源:DaWei
导读:   这篇文章主要讲解了“CentOS如何设置nginx防止自己的网站被盗链”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收

  这篇文章主要讲解了“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

  

  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防止自己的网站被盗链”的文章就介绍到这了,更多相关的内容,欢迎关注

(编辑:吕梁站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章