我使用了应该有效的规则,并且过去曾有过工作,但我尝试的每个变体都会继续为图像提供服务(每次清除缓存)。其他规则,如URL重写工作正常。
我会提供错误日志的副本,但我似乎无法通过FTP获取访问权限,运行服务器的人也不会掉落。
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(sub\.)?example.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
我知道这似乎应该都有效,每个人都说代码是正确的。然而在过去的几周里,我一直在努力寻找解决方案。我很肯定有其他事情与代码无关,我只是需要帮助找到它,因为我没有太多经验与htaccess广泛合作。
完整的htaccess:
ErrorDocument 404 /404.php
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /path/to/.htpasswd
Require valid-user
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?dev.mangazing\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
答案 0 :(得分:0)
这是你要找的吗?
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?sub.example.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
请尝试替换您的重写规则行
替换:
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
使用:
RewriteRule \.(jpg|jpeg|png|gif)$ http://icons.iconarchive.com/icons/tatice/cristal-intense/256/Ad-Aware-icon.png [NC,R,L]
您的代码如下所示:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?sub.example.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://icons.iconarchive.com/icons/tatice/cristal-intense/256/Ad-Aware-icon.png [NC,R,L]
或强>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?dev.mangazing\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://icons.iconarchive.com/icons/tatice/cristal-intense/256/Ad-Aware-icon.png [NC,R,L]
并访问您的图片网址中的一个,我希望这对您有用..请记住将替换图片上传到服务器并更改新重写规则中的替换网址,这可以通过透明的1像素图像完成(不是html / php等文件,它必须是图像文件!)免费托管在google pages或您喜欢的任何其他网站托管服务..
请尝试使用<IfModule mod_rewrite.c>
:
<IfModule mod_rewrite.c>
RewriteEngine on
#Your other anti hotlink commands here...
</IfModule>
更多保护图片热链接的方法:creating the ultimate .htaccess anti hotlinking strategy