NG实现防盗链

通过request的referer判断是否允许访问

设置方法为:在location下,设置允许的referer(valid_referers),判断当前referer,如果是无效的referer,则返回403;

  • 示例:fdl.com域名允许访问静态资源,如果不是这个域名,则返回403,如果是直接访问,也允许。
  1. 配置nginx
# 防盗链
server {
    listen 80;
    server_name fdl.com daolian.com;

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

    location ~*/(js|css|img) {
        # 静态资源只允许 fdl.com 或者直接访问
        valid_referers none fdl.com;
        if ($invalid_referer) {
            return 403;
        }
         root html/static;
        index index.html;
    }
}
  1. 设置本机host
127.0.0.1 fdl.com
127.0.0.1 daolian.com
  1. 分别访问站点
    • fdl.com,成功
      NG实现防盗链_第1张图片
    • daolian.com 静态资源访问失败
      NG实现防盗链_第2张图片
  • 直接访问,也是OK的
    NG实现防盗链_第3张图片

你可能感兴趣的:(nginx,服务器,前端)