• 售前

  • 售后

热门帖子
入门百科

LAMP架构之Nginx(3):nginx重定向+防盗链

[复制链接]
Runlinh 显示全部楼层 发表于 2022-1-13 00:13:55 |阅读模式 打印 上一主题 下一主题
实验环境:

   接nginx(2),server2、3的http服务打开
  一、重定向

   这里实验结果有问题。
  (1)域名保护

   防止域名恶意解析到服务器IP,为了安全不想让客户端直接以ip形式访问
  以下是未加入域名保护时,客户curl服务器的结果
  


   配置文件  加入return 500;
   nginx -s reload
  此时curl的结果为
  

 (2)重定向:80重定向443

     配置文件加入     rewrite ^/(.*)$ https://www.westos.org permanent;
  

    客户端curl www.westos.org
  这里客户端一定要有解析!
   
 


    若配置文件改为rewrite ^/(.*)$ https://www.westos.org/$1 permanent;
  表示在网页中用户鼠标点击后的页面进行重定向
  

(3)网站的整体迁移

    比如某个网站A需要维护但是不能停止服务,那么用临时网站C代替,用户访问A时自动跳到C
  配置文件底部新加一个虚拟主机,并新建相应文件
     server {
              listen 80;
             server_name bbs.westos.org;

               location / {
                  root /bbs;
                  index index.html;
                }
       }

  

    此时客户端 curl bbs.westos.org
  可以看到新页面,但要注意我们更想要另一种效果
  

   配置文件新增rewrite ^/bbs$ http://bbs.westos.org permanent;
  

   客户端测试:   效果如下
  curl www.westos.org/bbs
curl www.westos.org
curl www.westos.org/bbs -I 
  

    但是这里出现一个问题,curl www.westos.org/bbs/index.html -I
  出现404的情况,也就是说不能继续往下重定向
  

   解决办法:配置文件取消注释
    rewrite ^/bbs/(.*)$ http://bbs.westos.org/$1 permanent;
  

    再次测试       curl www.westos.org/bbs/index.html -I,成功
  

 (4)基于if语句的网站迁移

   通过一条if语句,用一个服务器实现重定向
  配置文件需要把上边定义的服务器注销
  

    原有server上,注销旧策略,加入if判断
               if ($host = "bbs.westos.org"){
                   rewrite ^/(.*)$ http://www.westos.org/bbs/$1 permanent;
               }

               location / {
                 # proxy_pass http://westos;
                   root html;
                   index index.html;

  


   将bbs目录拷贝到
  nginx -s reload
  
  
 

    主机测试
  

 二、防盗链

(1)简单的盗链方式

   server2:新建haha.html,内容如下
  
  
  
  浏览器 http://172.25.73.2/haha.html出现下图 
  要注意的是,文件中仅添加了一个地址,也就是说这个页面并不耗费server2的流量,而是耗费的 http://172.25.73.1/download/haha.jpg的流量,所以这种行为非常不道德,要防止盗链。
  

(2)防盗链

    1、遇到盗链情况,让他返回值是403
  配置文件修改:
          location ~ \.(jpg|png)$ {
                valid_referers none blocked www.westos.org;
                if ($invalid_referer) {
                        return 403;  返回403
                        #rewrite ^/ http://www2.westos.org/daolian.jpg;   连接到另一个图
       }
      }
  


 这里和重定向有关系,没有出来效果



来源:https://blog.caogenba.net/weixin_43803940/article/details/122376079
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作