[英]Allow access from one domain with NGINX
我正在尋找一種解決方案,以防止與用於JWPlayer的NGINX熱鏈接。 假設我在http://mydomain1.com
上將NGINX服務器配置為反向代理,我將獲得URL http://mydomain1.com/file.mp4
放在放置在另一個VPS上的網站上,該網站位於http://mydomain2.com
。 如何限制文件,使其只能在http://mydomain2.com
上播放而不能在其他任何地方播放?
我嘗試了allow & deny
指令,但是后來我意識到這是HTML5流,因此這些指令將阻止向用戶發送流。
在mydomain1.com的nginx上。 確保您有一個額外的阻止,它偵聽默認主機並拒絕所有流量。 然后,在現有的偵聽塊中,添加一條規則,僅允許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";
}
}
}
因為mp4網址將放在HTML5播放器中,所以這意味着遠程地址(用戶的計算機)將始終直接與反向代理進行通信。 因此,除了nginx安全鏈接模塊之外,使用其他方法來限制訪問是不可能的。 有了這個模塊,我現在可以基於用戶的ip,到期時間,URL和密碼來限制訪問。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.