.htaccess 阻止图像文件直接URL访问?

huus2vyu  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(167)

我想防止人们通过在浏览器地址栏中输入网址来获取我网站的图片,同时允许他们在访问网页时查看图片。
我尝试了以下.htaccess代码:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?localhost.*$ [NC]
RewriteRule \.(gif|jpg|png)$ - [F]

然而,它不仅限制了直接的URL访问,而且甚至在访问网页时也隐藏了所有的图像。现在我的网站看起来像一个有很多图像漏洞的文本页面。
有人能告诉我为什么上面的.htaccess不起作用吗?
我发现它在这里(htaccess) How to prevent a file from DIRECT URL ACCESS?,但我没有足够的声誉,要求在该职位,因为我刚刚创建了这个帐户张贴这个问题。

  • 谢谢-谢谢
a7qyws3x

a7qyws3x1#

如果你直接访问图片,返回403(禁止),但允许他们在网站上显示。它工作,但测试可能是棘手的/误导。阅读questions/10236717/htaccess-how-to-prevent-a-file-from-direct-url-access
防止热链接的另一种方法如下(来自:htaccess generators

RewriteEngine on  
RewriteCond %{HTTP_REFERER} !^$  
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]  
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]

相关问题