Ma base de code est partagé entre plusieurs environnements ( en direct, la mise en scène, dev) et sous-domaines ( staging.example
, dev.example
, etc.) et seulement deux devraient être autorisés à être rampé (ie. www.example
Et example
). Normalement, je modifierais /robots.txt
et ajouterais Disallow: /
, mais en raison de la base de code partagée, je ne peux pas modifier /robots.txt
sans affecter tous les (sous) domaines.
Des idées sur la façon de procéder?
sub.example.com/robots.txt
, vous devrez donc faire quelque chose pour servir une réponse différente en fonction du sous-domaine. Vous n'avez pas besoin d'utiliser mod_rewrite, mais c'est une technique que j'ai vue utilisée plusieurs fois. Sirobots.txt
est généré dynamiquement, vous pouvez modifier la réponse dans le code côté serveur (par exemple, PHP).robots.txt
pourrait être d'empêcher l'indexation, plutôt que l'analyse, en envoyant unX-Robots-Tag: noindex
en-tête de réponse HTTP lorsque de tels sous-domaines sont accédés (ce qui pourrait également être fait en .htaccess). Bien que je pense que la prévention de l'exploration est probablement préférable. (?)robots.txt
ne fonctionne que s'il est présent dans la racine.Vous devez en télécharger un distinct
robots.txt
pour chaque site Web de sous-domaine, à partir duquel vous pouvez y accéderhttp://subdomain.example.com/robots.txt
.Ajoutez le code ci-dessous dans
robots.txt
Et une autre façon est d'insérer une
<META>
balise Robots dans toutes les pages.la source
/robots.txt
et ajouteraisDisallow: /
, mais en raison de la base de code partagée, je ne peux pas modifier/robots.txt
sans affecter tous les (sous) domaines."Je supprimerais la balise meta de la page html et la créerais dynamiquement en fonction de votre sous-domaine. par exemple, nous utilisons le sous-domaine dev. Pour le developpement. Donc, dans l'événement pageload, nous avons ceci:
la source