14. Nginx Secure Link

用于校验资源请求的合法性

  server {
        listen 3300;
        server_name www.siguoya.name;
        root /usr/local/nginx/1.12.1/html;
        location / {
            secure_link $arg_md5,$arg_expires;
            secure_link_md5 "$secure_link_expires$uri siguoya";
            if ($secure_link = "") {
                return 403;
            }
            if ($secure_link = "0") {
                return 410;
            }
        }
    }

如果是访问 http://www.siguoya.name:3300/index.html?expires=111 的话,md5 值的 shell 计算方法如下:

echo -n '111/index.html siguoya' | openssl md5 -binary | openssl base64 | tr +/ -_ | tr -d =
链接 响应码
http://www.siguoya.name:3300/index.html?expires=111&md5=111 403,md5不正确,时间过期
http://www.siguoya.name:3300/index.html?expires=2147483647&md5=111 403,md5不正确,时间未过期
http://www.siguoya.name:3300/index.html?expires=111&md5=cLdY2ROg2kZDD0xkWaJ8TQ 410,md5正确,时间过期
http://www.siguoya.name:3300/index.html?expires=2147483647&md5=GfmT6Hj3U55xfQJ3aNqjfQ 200,md5正确,时间未过期

专题阅读

  • 1. Nginx的优点
  • 2. Nginx的安装与开机自启
  • 3. Nginx目录和配置语法
  • 4. Nginx模块
  • 5. Nginx静态资源处理
  • 6. Nginx浏览器缓存原理
  • 7. Nginx资源的跨域访问
  • 8. Nginx资源的防盗链
  • 9. Nginx代理
  • 10. Nginx负载均衡
  • 11. Nginx缓存
  • 12. Nginx动静分离
  • 13. Nginx Rewrite
  • 14. Nginx Secure Link
  • 15. Nginx Geo
  • 16. Nginx HTTPS服务
  • 17. Nginx与Lua开发
  • 18. Nginx与Lua灰度发布
  • 19. Nginx常见错误
  • 20. Nginx性能优化
  • 21. Nginx安全管理

你可能感兴趣的:(14. Nginx Secure Link)