2015-09-22 41 views
1

我已经准备了一个.htaccess文件,并用PDF文件把它放在一个目录中,以防止盗链只是从我的站点如下:如何阻止内容盗链除了从htaccess的规则,谷歌索引

RewriteEngine On 
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example.com [NC] 
RewriteRule ([^/]+)\.(pdf)$ http://www.example.com/search_gcse/?q=$1 [NC,R,L] 

此规则按预期工作。如果链接来自外部文件,请求会重定向到我的搜索页面,在那里平台将搜索该文件(以及类似文件)。

因此,当我在Google中搜索时,google(已被编入索引)的搜索结果被重定向到我的搜索页面(很好)。现在,我担心Google下一次为我的网站编制索引。所以,我添加了一条新规则如下:

RewriteEngine On 
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example.com [NC] 
RewriteCond %{HTTP_USER_AGENT} !(googlebot) [NC] 
RewriteRule ([^/]+)\.(pdf)$ http://www.example.com/search_gcse/?q=$1 [NC,R,L] 

但是,我不确定该规则是否正常,以及检查它的方法。如果我尝试从谷歌搜索结果中访问文件,我仍然被重定向到搜索页面,所以它不会影响谷歌搜索结果。

此规则是否允许谷歌索引我的新PDF文件,但阻止从谷歌搜索结果页直接访问?如果不是,那么实现这一目标的正确方法是什么?

+0

您的第一个代码块允许Google bots为这些文件建立索引,但是当试图从Google结果中访问PDF时,用户将被重定向到搜索页面。 – hjpotter92

+0

@ hjpotter92哦,我想我知道了...谷歌机器人索引不能作为参考访问,但作为一个不同的条件?你可以指定它多一点作为答案?我会接受并赞扬它。 – pQB

回答

1

虽然你的htaccess规则将禁止盗链;它不适合搜索索引器和其他机器人。搜索引擎仍然能够索引你的文件。

为了禁止搜索引擎索引您的文件;你需要通过X-Robots-Tag标题。 Google提供了一个关于如何防止机器人对其已爬网的页面进行索引/缓存/归档的小文档。

<Files ~ "\.pdf$"> 
    Header set X-Robots-Tag "noindex, nofollow" 
</Files>