所以我在我的网站.htaccess文件中有这个,以防止来自所有其他域的图像,JS和CSS的链接。
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain\.com [NC]
RewriteRule \.(gif|jpe?g|js|css)$ - [F,NC,L]
问题:如何有选择地允许一个或两个域进行热链接?
答案 0 :(得分:22)
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?otherdomain\.com [NC]
RewriteRule \.(gif|jpe?g|js|css)$ - [F,NC,L]
正如这说的那样可行。
“Refererr不是什么都没有,并且referer不匹配mydomain而referer与其他域名不匹配。
如果是你试图做相反的事情(黑名单来自hotlinking的一组域名)你会做类似的事情
RewriteCond %{HTTP_REFERER} ^http://(www\.)?baddomain1\.com [NC,OR]
RewriteCond %{HTTP_REFERER} ^http://(www\.)?baddomain2\.com [NC]
RewriteRule \.(gif|jpe?g|js|css)$ - [F,NC,L]
答案 1 :(得分:3)
RewriteCond %{HTTP_REFERER} !friendlysite\.com [NC]
(大概你不在乎请求是通过http还是https或其他什么,所以你可以把它留下来让它更通用)