Je suis dans une situation où je cherche à définir un enregistrement DNS différent pour un certain fichier d'un domaine, (en particulier www.domain.com/robots.txt
), à partir de la racine (www.domain.com
).
(La situation est que j'ai définissez la racine Web de manière à pointer sur un enregistrement non actif le site Web semble donc inexistant, mais il a toujours des enregistrements mx pour autoriser les courriers électroniques - mais j'ai maintenant réalisé que j’avais réellement besoin de robots.txt pour être accessible en direct et accessible aux robots d'exploration tels que archive.org afin qu'ils respectent les souhaits de mon site de ne pas afficher les instantanés passés du site.)
Est-il possible de le faire dans le DNS (comme une sorte d'enregistrement 'TXT'?), Ou n'y a-t-il aucun moyen de différencier le DNS de tout ce qui se termine .com
, de ce qui a déjà été défini pour www.domain.com
?
Le problème, c’est que j’ai vraiment besoin que la racine Web apparaisse solidement comme un site inexistant, comme indiqué dans la question précédente. Il ne peut s'agir d'une "fausse" page inexistante, mais réelle.
Peut-être que ces deux choses sont simplement incompatibles?
Avec les enregistrements DNS A, vous ne pouvez pas définir d’enregistrements pour un fichier spécifique. DNS est tout ou rien pour le domaine.
Si vous devez servir un fichier robots.txt, le DNS doit être résolu en un domaine valide et un serveur Web doit répondre à cette demande.
Voici ce que je recommande:
DNS
Configurez un CNAME pour diriger www.domain.com vers domain.com. Configurez un enregistrement A pour diriger domain.com vers l'adresse IP de votre serveur.
Serveur Web
Sur votre serveur (en supposant Apache), vous pouvez utiliser .htaccess
pour limiter les fichiers servis.
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} !/robots.txt [NC]
RewriteRule ^(.*) - [L,R=404]
Cela renverra un 404 (ou le code de votre choix) pour toutes les pages sauf /robots.txt.
De cette façon, vous pouvez héberger le fichier robots.txt, mais pas les autres pages.
Il y a aussi le code de réponse HTTP 410 Gone mais je ne sais pas comment les bots le gèrent.
10.4.11 410 est parti
La ressource demandée n'est plus disponible sur le serveur et aucune adresse de transfert n'est connue. Cette condition devrait être considérée comme permanente. Les clients avec des capacités d'édition de lien DEVRAIENT supprimer les références à l'URI de demande après l'approbation de l'utilisateur. Si le serveur ne sait pas ou n'a aucune possibilité de déterminer si la condition est permanente ou non, le code d'état 404 (non trouvé) DEVRAIT être utilisé à la place. Cette réponse peut être mise en mémoire cache sauf indication contraire.
La réponse 410 est principalement destinée à faciliter la tâche de maintenance Web en informant le destinataire que la ressource est intentionnellement indisponible et que les propriétaires de serveur souhaitent que les liens distants vers cette ressource soient supprimés. Un tel événement est courant pour les services promotionnels à durée limitée et pour les ressources appartenant à des personnes ne travaillant plus sur le site du serveur. Il n'est pas nécessaire de marquer toutes les ressources indisponibles de façon permanente comme "parties" ou de conserver la marque pour une durée indéterminée - cela est laissé à la discrétion du propriétaire du serveur.
Votre question est un peu déroutante. Mais je pense avoir compris. Je vais faire des hypothèses. La première est que vous avez un serveur Web activé, mais pas de site Web.
** Mise à jour: D'accord, d'après les commentaires, votre question n'est pas claire du tout. J'actualise la réponse pour qu'elle soit plus complète.
Non. DNS signifie Service de nom de domaine. Il traduit les noms de domaine en adresses IP routables. Rien de plus.
Si vous ne souhaitez pas d'instantané d'un site vide, vous n'avez pas besoin d'un fichier robots.txt, vous désactivez simplement le serveur Web. Par éteindre, je veux dire arrêter le service.
Voici la documentation Apache:
http://httpd.Apache.org/docs/2.2/en/stopping.html
Voici une page Microsoft (peut-être pas la dernière):
http://technet.Microsoft.com/en-us/library/cc732317 (v = ws.10) .aspx
Si ce n'est pas ce que vous voulez faire, mettez simplement un fichier robots.txt à la racine, mais assurez-vous que soit la redirection www vers mdomain.com, soit la redirection mdomain.com vers www.
# redirect root to www
RewriteCond %{HTTP_Host} ^mydomain\.com$ [NC]
RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,L]
Archive.org fait un très mauvais travail de respect des souhaits des propriétaires de sites Web. Il y a des trous dans leurs processus et leurs politiques. Par exemple, si votre site disparaît, les instantanés d'archivage peuvent réapparaître. En outre, il est très possible que archive.org voit et obéisse à un fichier robots.txt via www.mondomaine.com, mais pas à mydomain.com. Même quand le fichier robots.txt peut être lu, archive.org peut les ignorer et indexer votre site de toute façon. Ceci dit, si toutes les étoiles s’alignent, archive.org peut lire le fichier robots.txt et supprimer tous les instantanés, mais je les ai vus revenir des mois plus tard.
Assurez-vous que vous pouvez accéder à votre fichier robots.txt à partir des sites www.mydomain.com et mydomain.com. C'est important. Créez le fichier et mettez-y une entrée comme ceci:
User-agent: ia_archiver
Disallow: /
Si vous ne pouvez pas accéder à votre site en tant que www.mondomaine.com et mondomaine.com, vérifiez les éléments suivants sur votre serveur DNS:
Un enregistrement A associant votre adresse IP à mydomain.com Un enregistrement CNAME associant www.mondomaine.com à mydomain.com - ou - Un enregistrement associant votre adresse IP à www.mondomaine.com
Je pense que cela devrait le faire. Je peux mettre à jour plus si cela est nécessaire.