Nginx的防盗链配置

Nginx的防盗链配置

在192.168.4.5上:(安装nginx)//安装nginx服务,并建立图片资源

[root@localhost 桌面]# yum -y install gcc gcc-c++

[root@localhost 桌面]# yum -y install openssl-devel zlib-devel pcre-devel

[root@localhost 桌面]# ls

nginx-1.0.5.tar.gz

[root@localhost 桌面]# tar -zxf nginx-1.0.5.tar.gz

[root@localhost 桌面]# ls

nginx-1.0.5  nginx-1.0.5.tar.gz

[root@localhost 桌面]# cd nginx-1.0.5

[root@localhost nginx-1.0.5]# ls

auto     CHANGES.ru  configure  html     man     src

CHANGES  conf        contrib    LICENSE  README

[root@localhost nginx-1.0.5]# useradd -s /sbin/nologin nginx

[root@localhost nginx-1.0.5]#  ./configure --user=nginx --group=nginx   \

 --prefix=/usr/local/nginx   \

 --with-http_ssl_module

回车即可。

[root@localhost nginx-1.0.5]# make && make install

[root@localhost nginx-1.0.5]# cd /root/桌面

[root@localhost 桌面]# vim /usr/local/nginx/conf/nginx.conf

http {

    include       mime.types;

    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {

        listen       80;

        server_name  www.baidu.com;

        location / {

            root   baidu;

            index  index.html index.htm;

        }

    }

}

wq

[root@localhost 桌面]# mkdir /usr/local/nginx/baidu/image –p

[root@localhost 桌面]# ls

mv.jpg  nginx-1.0.5  nginx-1.0.5.tar.gz

[root@localhost 桌面]# mv mv.jpg /usr/local/nginx/baidu/image/

[root@localhost 桌面]# ls /usr/local/nginx/baidu/image/

mv.jpg

[root@localhost 桌面]# /usr/local/nginx/sbin/nginx

[root@localhost 桌面]# lsof -i :80

COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

nginx   7149  root    6u  IPv4  28421      0t0  TCP *:http (LISTEN)

nginx   7150 nginx    6u  IPv4  28421      0t0  TCP *:http (LISTEN)

192.168.4.66上(客户端)   //客户端直接访问正规网站站点下的图片资源,可以访问。

[root@localhost 桌面]# vim /etc/hosts

192.168.4.5 www.baidu.com

wq

[root@localhost 桌面]# firefox

在192.168.4.205上:(配置盗链网站www.changyou.com,盗窃192.168.4.5上的mv图片)

[root@localhost 桌面]# yum -y install httpd

[root@localhost 桌面]# /etc/init.d/httpd start

[root@localhost 桌面]# vim /var/www/html/index.html

<img src="http://www.baidu.com/image/mv.jpg">

wq

[root@localhost 桌面]# vim /etc/httpd/conf/httpd.conf

<VirtualHost *:80>

    ServerAdmin 1441107787@qq.com

    DocumentRoot /changyou

    ServerName www.changyou.com

    ErrorLog logs/www.changyou.com-error_log

    CustomLog logs/www.changyou.com-access_log common

</VirtualHost>

wq

[root@localhost 桌面]# mkdir  /changyou

[root@localhost 桌面]# vim /changyou/index.html

<img src="http://www.baidu.com/image/mv.jpg">

wq

[root@localhost 桌面]# /etc/init.d/httpd restart

在192.168.4.66上:(客户端       //通过访问盗链网站能访问到正规网站的图片资源可以访问。

[root@localhost 桌面]# vim /etc/hosts

192.168.4.205 www.changyou.com

wq

[root@localhost 桌面]# firefox

在192.168.4.5上:nginx上配置防盗链技术。(返回403)

[root@localhost 桌面]# vim /usr/local/nginx/conf/nginx.conf

http {

    include       mime.types;

    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {

        listen       80;

        server_name  www.baidu.com;

        location / {

            root   baidu;

            index  index.html index.htm;

        }

        location /image {                     //该行也可换为:location ~*\.(jpg)$ {

            root baidu;

            valid_referers none blocked www.baidu.com;

            if ($invalid_referer) {

                return 403;

            }

        }

    }

}

wq

[root@localhost 桌面]# /usr/local/nginx/sbin/nginx -s stop

[root@localhost 桌面]# /usr/local/nginx/sbin/nginx

注意:上面的防盗链location匹配也可写成下面形式,下面形式比较全面,可以根据不同情况选择匹配即可。

location ~*\.(jpg|gif|png|swf|flv|wma|wmv|asf|mp3|mmf|zip|rar)$ {

            root baidu;

            valid_referers none blocked www.baidu.com;

            if ($invalid_referer) {

                return 403;

            }

        }

在192.168.4.66上:(客户端       //通过访问盗链网站访问到正规网站的图片资源,不能访问。

[root@localhost 桌面]# vim /etc/hosts

192.168.4.205 www.changyou.com

192.168.4.5 www.baidu.com                       //正规网站的域名解析要有

wq

[root@localhost 桌面]# firefox

在192.168.4.5上:nginx上配置防盗链技术。(转到其他页面(新浪页面)

http {

    include       mime.types;

    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {

        listen       80;

        server_name  www.baidu.com;

        location / {

            root   baidu;

            index  index.html index.htm;

        }

        location /image {

            root baidu;

            valid_referers none blocked www.baidu.com;

            if ($invalid_referer) {

                rewrite ^/ http://www.xinlang.com/image/qita.jpg;

            }

        }

    }

    server {

        listen       80;

        server_name  www.xinlang.com;

        location / {

            root   xinlang;

            index  index.html index.htm;

        }

    }

}

wq

[root@localhost 桌面]# mkdir /usr/local/nginx/xinlang/image -p

[root@localhost 桌面]# ls

nginx-1.0.5  nginx-1.0.5.tar.gz  qita.jpg

[root@localhost 桌面]# ls

nginx-1.0.5  nginx-1.0.5.tar.gz  qita.jpg

[root@localhost 桌面]# mv qita.jpg /usr/local/nginx/xinlang/image/

[root@localhost 桌面]# tree /usr/local/nginx/xinlang/

/usr/local/nginx/xinlang/

└── image

└── qita.jpg

[root@localhost 桌面]# tree /usr/local/nginx/baidu/

/usr/local/nginx/baidu/

└── image

    └── mv.jpg

[root@localhost 桌面]# /usr/local/nginx/sbin/nginx -s stop

[root@localhost 桌面]# /usr/local/nginx/sbin/nginx

注意:上面的防盗链location匹配也可写成下面形式,下面形式比较全面,可以根据不同情况选择匹配即可。

location ~*\.(jpg|gif|png|swf|flv|wma|wmv|asf|mp3|mmf|zip|rar)$ {

            root baidu;

            valid_referers none blocked www.baidu.com;

            if ($invalid_referer) {

                rewrite ^/ http://www.xinlang.com/image/fj.jpg;

            }

        }

在192.168.4.66上:(客户端   //访问盗链网站访问到正规网站的图片资源,不能访问想要页面,转到其他页面。

[root@localhost 桌面]# vim /etc/hosts

192.168.4.205 www.changyou.com 

192.168.4.5 www.baidu.com  www.xinlang.com             //正规网站的域名解析要有

wq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维实战课程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值