我的.htaccess
文件中的以下代码出现问题:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(tv\.)?my-domain\.com:16500 [NC]
RewriteCond %{HTTP_REFERER} !^http://(tv\.)?my-domain\.com:16500.*$ [NC]
RewriteRule \.(gif|jpg|js|txt|mp4|mp3)$ /redirect/error.mp4 [L]
所以这段代码的作用是,它允许 ONLY tv.my-domain.com:16500可以流式传输.htaccess
所在文件夹中的内容。
这一切都很好但是,如果我想将IP地址(连同已有的域规则)添加到允许访问文件的HTTP裁判列表中,我该怎么办?
此代码不起作用:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(tv\.)?my-domain\.com:16500 [NC]
RewriteCond %{HTTP_REFERER} !^http://(tv\.)?my-domain\.com:16500.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://?10.0.0.2:16500 [NC]
RewriteCond %{HTTP_REFERER} !^http://?10.0.0.2:16500.*$ [NC]
RewriteRule \.(gif|jpg|js|txt|mp4|mp3)$ /redirect/error.mp4 [L]
那么,有人可以告诉我这样做的正确方法是什么?
提前谢谢!
答案 0 :(得分:1)
这是因为您需要使用yourDataTable
而不是%{REMOTE_ADDR}
来获取IP地址。
所以语法是这样的:
%{HTTP_REFERER}
确保在之前清除缓存,然后对此进行测试。