我正在寻找一种解决方案,以防止与NGINX的JWPlayer热链接。假设我在http://mydomain1.com/file.mp4
配置了一个NGINX服务器作为反向代理,我会在http://mydomain2.com
上的另一个VPS上将我的网站http://mydomain2.com
放到我的网站上。如何限制文件以便仅在allow & deny
上播放,而不在其他地方播放?
我尝试了{{1}}指令,但之后我意识到这是一个HTML5流媒体,因此指令会阻止用户流。
答案 0 :(得分:0)
在mydomain1.com的nginx上。确保您有一个额外的块来侦听默认主机并拒绝所有流量。然后在现有的listen块中添加一条规则,仅允许www.mydomain2.com
map $http_referer $not_allowed {
default 0;
"~www.mydomain2.com" 1;
}
server {
listen 80 default_server;
server_name _;
deny all;
}
server {
listen 80;
server_name www.mydomain1.com
location / {
if ($not_allowed)
{
return 404 "Not sure its there";
}
}
}
答案 1 :(得分:0)
因为mp4 url将放在HTML5播放器中,这意味着远程地址(用户的机器)将始终直接与反向代理通信。因此,除了nginx安全链接模块之外,不可能使用其他方法来限制访问。有了这个模块,我现在可以根据用户的IP,到期时间,网址和密码来限制访问。