2

我已限制使用 htaccess 对我的文件进行热链接。但我需要将这些文件显示在 Google Doc Viewer 中。在 htaccess 中,我允许 Google Docs 热链接我的文件,但它不起作用。请帮助我下面是我在 htaccess 文件中使用的代码

RewriteEngine on RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomainname.com/ [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?docs.google.com [NC] RewriteCond %{REQUEST_URI} !hotlink\.(gif|png|jpg|doc|ppt|xls|pdf|html|htm|xlsx|docx|pptx|swf) [NC] RewriteRule .*\.(gif|png|jpg|doc|ppt|xls|pdf|html|htm|xlsx|docx|pptx|swf)$ http://mydomainname.com/ [NC]

4

2 回答 2

1

使用来自 https 网址的引荐来源网址可能不会很成功。另请注意,googledocs 中的远程不是由浏览器从您的服务器获取的,而是从 google 的服务器进程获取的。

我遇到了同样的问题,我发现的技巧是允许特定的用户代理:

RewriteCond %{HTTP_USER_AGENT} !(.*Feedfetcher-Google.*)

当然,它很容易被欺骗,但在“正常使用”中,您的热链接保护仍然有效。

于 2012-02-28T19:45:04.460 回答
0

Oliver S 是正确的,但现在用户代理的名称可能已更改.. 我试过了

RewriteCond %{HTTP_USER_AGENT} !(.*Google.*)

而且效果很好

于 2013-10-05T11:44:37.123 回答