我们公司有搜索引擎索引的临时开发网址。我们需要通过全局htaccess文件来停止它。通过全局,我的意思是我想将此访问权限放入我们的根目录,该权限将应用每个站点的规则。每次我们建立一个新网站时,我都不想在该文件夹中删除htaccess文件。
我写htaccess规则很糟糕,否则我会自己做。我很感激社区的任何意见。
以下是一个示例临时网址:1245.temp.oursite.com
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} AltaVista [OR]
RewriteCond %{HTTP_USER_AGENT} Googlebot [OR]
RewriteCond %{HTTP_USER_AGENT} msnbot [OR]
RewriteCond %{HTTP_USER_AGENT} Slurp
RewriteRule ^.*$ "http\:\/\/oursite\.com" [R=301,L]
我试过玩这个,但就像我上面说过的那样,我在编写htaccess规则时非常糟糕。
修改的 问题类似于this one,但是我的涉及子域。
答案 0 :(得分:4)
如果您不希望搜索引擎为网站编制索引,请将robots.txt
文件添加到这些子网域。它应该包含:
User-agent: *
Disallow: /
所有主流搜索引擎都尊重Web机器人标准。
答案 1 :(得分:2)
如果您只是想要一个通用文件来阻止机器人,那么您可以使用这样的东西。这不是特定于域。
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^.*(AltaVista|Googlebot|msnbot|Slurp).*$ [NC]
RewriteRule .* - [F,L]
编辑:如果您可以从主根.htaccess文件访问子域,那么您可以使用这样的方法以及它应阻止访问的任何临时域。
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^.*(AltaVista|Googlebot|msnbot|Slurp).*$ [NC]
RewriteCond %{HTTP_HOST} ^([0-9]+)\.temp\.oursite\.com$ [NC]
RewriteRule .* - [F,L]