我一直在寻找一段时间,但没有找到任何符合我需求的东西.我不需要热链接保护,因为我想阻止人们直接访问我的文件.让我们说:
我的website.com请求website.com/assets/custom.js,这是有效的,但我想直接访问此文件的访问者得到一个403 status code或什么.我真的不知道是否可能,而且我没有任何合乎逻辑的步骤.
问候 !
您可以使用nginx referer模块:http://nginx.org/en/docs/http/ngx_http_referer_module.html.像这样的东西:
server {
listen 80;
server_name website.com;
root /var/www/website.com/html ;
location /assets/ {
valid_referers website.com/ website.com/index.html website.com/some_other_good_page.html ;
if ($invalid_referer) {
deny all;
}
}
}
Run Code Online (Sandbox Code Playgroud)
这个配置保护assets目录.但请记住,这不能保证并且仅适用于浏览器 - 任何机构都可以使用curl或telnet模拟有效请求.为了确保安全,您需要使用动态生成的页面和动态生成的链接.
| 归档时间: |
|
| 查看次数: |
6761 次 |
| 最近记录: |