2010-10-05 32 views
4

J'ai www.domainname.com, origin.domainname.com pointant vers la même base de code. Y at-il un moyen, je peux empêcher toutes les URL du nom de base origin.domainname.com d'être indexé.Comment empêcher les moteurs de recherche d'indexer toutes les URL commençant par origin.domainname.com

Y at-il une règle dans robot.txt pour le faire. Les deux URL pointent vers le même dossier. En outre, j'ai essayé de rediriger origin.domainname.com à www.domainname.com dans le fichier htaccess, mais il ne semble pas fonctionner ..

Si quelqu'un qui a eu un genre similaire de problème et peut aider, je serai reconnaissant .

Merci

Répondre

11

Vous pouvez réécrire robots.txt à un autre fichier (nommons ce 'robots_no.txt' contenant:

User-Agent: * 
Disallow:/

(source: http://www.robotstxt.org/robotstxt.html)

Le fichier .htaccess regarderait comme ceci:

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www.example.com$ 
RewriteRule ^robots.txt$ robots_no.txt 

Utilisez customiz ed robots.txt pour chaque (sous) domaine:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.example.com$ [OR] 
RewriteCond %{HTTP_HOST} ^sub.example.com$ [OR] 
RewriteCond %{HTTP_HOST} ^example.com$ [OR] 
RewriteCond %{HTTP_HOST} ^www.example.org$ [OR] 
RewriteCond %{HTTP_HOST} ^example.org$ 
# Rewrites the above (sub)domains <domain> to robots_<domain>.txt 
# example.org -> robots_example.org.txt 
RewriteRule ^robots.txt$ robots_${HTTP_HOST}.txt [L] 
# in all other cases, use default 'robots.txt' 
RewriteRule ^robots.txt$ - [L] 

Au lieu de demander des moteurs de recherche pour bloquer toutes les pages pour les pages autres que www.example.com, vous pouvez utiliser <link rel="canonical"> aussi.

Si http://example.com/page.html et http://example.org/~example/page.html les deux vers http://www.example.com/page.html, mettre la balise suivante du <head>:

<link rel="canonical" href="http://www.example.com/page.html"> 

Voir aussi Googles article about rel="canonical"

+0

Lekensteyn, qui semble bon. Cependant, j'avais un petit doute. Est-il possible d'allouer différents fichiers robots.txt en fonction de l'URL. Je n'ai pas réussi à trouver une telle règle. Si vous pouviez me diriger vers ces tuts, ce serait utile .. merci .. –

+0

Qu'avez-vous voulu dire par 'basé sur url'? Si vous vouliez dire 'domaine', regardez l'exemple ci-dessus. Guide de réécriture: http://httpd.apache.org/docs/current/rewrite/rewrite_intro.html. Une autre façon d'obtenir différents robots.txt pour chaque domaine est d'utiliser un serveur de script, par exemple PHP. – Lekensteyn

+1

gotchas .. merci ..! –