📅  最后修改于: 2023-12-03 14:59:01.424000             🧑  作者: Mango
热链接是指其他网站直接链接了本站的图片等资源,从而占用了本站的流量和带宽资源。为了避免和减轻热链接带来的影响,我们可以使用.htaccess文件来进行热链接预防。
我们可以利用Apache的Rewrite模块来实现阻止热链接的功能。具体方式如下:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)example\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
解释如下:
RewriteEngine on
表示开启URL重写。RewriteCond %{HTTP_REFERER} !^$
表示排除来源为空的情况。RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)example\.com [NC]
表示排除来源为本站时的情况。需要替换 example.com 为实际域名。RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
表示对满足条件的图片进行拒绝,HTTP状态码返回403。需要自行增加或减少被保护的文件类型。DirectoryIndex
:设定默认文档。ErrorDocument
:设定错误页面。AddHandler
:设定文件类型。Redirect
:重定向URL。Allow/Deny
:允许/拒绝特定IP或IP段访问。Options
:设定默认访问权限,如是否允许浏览目录等。可以根据具体需求使用上述技巧。