zoukankan      html  css  js  c++  java
  • 资源防盗链

    • 盗链是什么? 为什么要防?

    在自己页面上显示一些不是自己服务器的资源图片音频视频cssjs等)
    由于别人盗链你的资源会加重你的服务器负担,所以我们需要防止
    可能会影响统计

    • 防盗链是什么? 有哪几种方式?

    防止别人通过一些技术手段绕过本站的资源展示页,盗用本站资源,让绕开本站资源展示页面的资源链接失效
    大大减轻服务器压力

    1、Referer (易伪造referer,安全性低)
    2、加密签名 (安全性高)
    • 防盗链的工作原理

    通过Referer,服务器可以检测到访问目标资源的来源网站,如果是资源文件,则可以跟踪到显示它的网页地址。一旦检测到来源网站不是本站进行阻止

    通过签名,根据计算签名的方式,判断请求是否合法,如果合法则显示,否则返回错误信息

    • Referer实现

    Nginx为例,前提加载ngx_http_referer_module模块

    //指令valid_referers  全局invalid_referer
    location ~* .(gif|jpg|png|webp)$ {
       valid_referers none blocked domain.com *.domain.com ;
       if ($invalid_referer) {
            return 403;
            #rewrite ^/ http://www.domain.com/403.jpg;
       }
    }

    注意:为什么要none呢?因为如果通过浏览器直接访问资源,referer就是为空,所以这种方式不能彻底阻挡住盗链。

    • 加密签名

    Nginx为例,前提加载第三方模块HttpAccessKeyModule实现防盗链

    location ~* .(gif|jpg|png|webp)$ {
        accesskey on;
        accesskey_hashmethod md5;
        accesskey_arg key;
        accesskey_signature "mysrc$remote_addr";
    }




  • 相关阅读:
    ASP.NET MVC 编程参考
    IDEA+Gradle相关资料
    【树莓派】Linux应用相关:自动删除n天前日志
    【树莓派】制作树莓派最小镜像:img裁剪瘦身
    【树莓派】树莓派下WiFi断线自动重连
    【树莓派】树莓派远程监控
    【树莓派】服务配置相关
    【树莓派】Linux自动配置IP
    Jmeter相关
    Linux集群监控工具简介:Ganglia和Nagios
  • 原文地址:https://www.cnblogs.com/fuwentao/p/9529725.html
Copyright © 2011-2022 走看看