1

我有一个托管帐户,上面停有 2 个域,网站通过读取正在使用的域来显示不同的内容。

谷歌将对此进行搜索并将这 2 个域列为不同的网站。

所以我们在谷歌上列出了这些:-
www.blue.com/index.php
www.pink.com/index.php

然后假设我有另一个页面,我只想要蓝色域:www.blue.com/test.php,因为域被停放,这仍然可以在 www.pink.com/test.php

这意味着它会被蜘蛛化,我不希望它这样做。

我怎样才能阻止这个?

是否可以根据域有多个 htaccess 规则?或者也许是一个 robots.txt 来阻止蜘蛛——这将如何与多个域一起工作?

对我来说最好的解决方案是什么?

4

1 回答 1

1

重定向到 .htaccess 中的不同域特定 robots_(blue|pink).txt:

<IfModule mod_write.c>

  RewriteEngine on

  # internal redirect to robots_blue.txt
  RewriteCond %{HTTP_HOST} =www.blue.com
  RewriteRule ^robots\.txt$ /robots_blue.txt [L]

  # internal redirect to robots_pink.txt
  RewriteCond %{HTTP_HOST} =www.pink.com
  RewriteRule ^robots\.txt$ /robots_pink.txt [L]

  # internal redirct to index_blue.php, rewrite internal only 
  RewriteCond %{HTTP_HOST} =www.blue.com
  RewriteRule ^index\.php$ /index_blue.php [L]  # or "... /index.php?site=blue"

  # external permanent redirect of test.php to index.php if not www.blue.com  
  RewriteCond %{HTTP_HOST} !=www.blue.com
  RewriteRule ^test\.php$ /index.php [L,R=301] 

  # internal redirect
  RewriteCond %{HTTP_HOST} =www.pink.com
  RewriteRule ^index\.php$ /index_pink.php [L]

robots_blue.txt,不要抓取 www.blue.com 中的 test.php:

User-agent: *
Sitemap: http://www.blue.com/sitemap.xml

Disallow: /test.php
Disallow: ...

robots_pink.txt,在 www.pink.com 中允许抓取:

User-agent: *
Sitemap: http://www.blue.com/sitemap.xml

Disallow:

如果 www.blue.com 的 Disallows 与 www.pink.com 相同,则只需将 robots_blue.txt 用作两个域的 robots.txt。如果 www.pink.com 中没有使用 test.php,它应该可以工作。

但是,如果在 robots.txt 中也使用 sitemap.xml,这应该是一个解决方案。

于 2013-08-10T00:14:22.943 回答