服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

如何防止我的网站上的资源热链接(“图像盗窃”/“带宽盗窃”)?

我试图写“终极”反热链接.htaccess … 你可以在网上find许多例子/教程 / 生成器 ,但其中许多是错误的或不完整的(甚至是两者)。 这些是我正在寻找的function: 当HTTP_REFERER是外部站点时,必须阻止热链接的文件扩展名列表。 必须允许当前域(duh)的热链接,而不用在.htaccess中对其进行编码。 对于当前的域名,它必须在http和https下工作。 对于当前的域名,它必须与www和没有www。 必须能够添加例外域到这些规则(如我们的朋友谷歌),这些域名必须工作在HTTP和HTTPS和WWW或无www。 这是我迄今取得的成就: <IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine On RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mydomain.com/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com/.*$ [NC] RewriteRule \.(gif|jpe?g|png|zipx?)$ – [NC,F] </IfModule> 我的问题: 如何避免在.htaccess中硬编码mydomain.com ? (如果能够将这个.htaccess部署到我的所有域,而不必为每个域都修改它,那将是非常棒的。) 在我的RewriteRule中, gif|jpe?g|png|zipx? 相当于gif|jpg|jpeg|png|zip|zipx对不对? (对不起,在正则expression式中仍是新的。) 你不知道我的.htaccess中有什么不好的东西吗? 对于#1我知道这是有点可能的。 我find的最接近的是这个代码片段,它从url中删除www,而不用硬编码域。 有没有办法使用这种方法来我的问题#1? RewriteCond %{HTTP_HOST} ^www\.(.+) RewriteCond %{HTTPS}s/%1 ^(on(s)|offs)/(.+) RewriteRule ^ […]