web-dev-qa-db-fra.com

Comment spécifier le répertoire de destination du générateur de sitemap de Google

Existe-t-il un moyen de spécifier l'emplacement des fichiers de sitemap générés à l'aide de la dernière version de Google Sitemap Generator ?

La version est: 1.0.0.0? (un numéro de version très peu google, lol):

> Sudo /usr/local/google-sitemap-generator/bin/sitemap-daemon -v
Google Sitemap Generator (Beta) Version [1.0.0.0]

Le tableau de bord a une option " nom du fichier Sitemap ", mais il n’existe aucune option permettant de spécifier le répertoire de destination? Il place toujours les fichiers XML de sitemap générés dans la racine du document . Je suppose qu'il découvre la racine du document à partir de la lecture des journaux du serveur Web.

Pourquoi est-ce que je veux placer les fichiers de sitemap dans un autre répertoire?

La racine du document est pas bonne pour notre méthode de déploiement car il s'agit d'un lien symbolique vers le répertoire de déploiement actuel qui change quotidiennement. Pour que les sitemaps apparaissent comme s’ils se trouvaient à la racine de l’url (http://www.example.com/sitemap.xml), nous utilisons une règle de pseudonyme pour mapper les fichiers XML à l’endroit où nous les conservons, par exemple. en utilisant nginx :

# Alias all XML files (e.g. Rss) to shared directory
location ~* /(.*\.xml)$ {
    alias /var/www/live/shared/xml/$1;    
}
3
Tom

Le protocole officiel du plan du site dit il devrait être situé à l’URL racine que tous les fichiers qu’il pointe partager en commun. Ainsi, si les URL de votre sitemap ressemblent à http://www.example.com/site/image1.jpg et http://www.example.com/site/mypage.html, vous pouvez placer le fichier sitemap.xml dans http://www.example.com/site/sitemap.xml ou http://www.example.com/sitemap.xml.

Si vous ne parvenez pas à placer un sitemap dans ce répertoire pour quelque raison que ce soit, vous pouvez le placer n'importe où sur votre serveur, à condition que votre .htaccess ou ISAPI Rewrite (ou tout autre outil de réécriture d'URL) puisse "prétendre" qu'il est à la racine. J'ai réussi à utiliser ISAPI Rewrite sur un site ASP.

5
JoshMock

Je n'ai pas utilisé cet outil, donc je ne connais pas la réponse directe à votre question. Cependant, si vous ne trouvez pas le moyen de placer les fichiers ailleurs, vous pouvez simplement les copier dans un autre dossier, comme ceci:

cp -t sitemaps/ *.xml

sitemaps est le nom du dossier et *.xml sélectionne tous les fichiers d'entrée, en supposant qu'ils portent l'extension .xml. Vous pouvez créer un script batch qui exécute le générateur de sitemap, puis copie les fichiers, le tout dans un.

Bien que le protocole officiel indique que les sitemaps devraient être à la racine, ils peuvent en réalité aller n’importe où sur le même domaine (je les ai déjà placés dans leur propre dossier sitemaps, sans aucun problème).

Vous devriez également créer un fichier d'index de sitemap si vous avez beaucoup de sitemaps. De cette façon, il vous suffit de soumettre le fichier d'index à chaque outil pour les webmasters.

2
DisgruntledGoat

J'ai eu le même problème et je n'ai pas trouvé ma réponse ici, ni sur aucun fichier d'aide ou de configuration de Google. Alors laissez-moi le partager ici!

Je lis mes journaux et vois:

2012-08-21T17: 55: 01Z: Un graveur ne peut pas ouvrir le fichier: /htdocs/web_sitemap_4149a902_000.xml (2)

Vous devez créer un lien symbolique appelé "htdocs" dans le répertoire racine de votre système:

cd /
ln -s /home/www/yoursiterootdir htdocs

Ne me demandez pas si les liens symboliques fonctionnent sous Windows, mais j'ai trouvé cette commande proche de "ln" pour les vaches sous Windows (NTFS)!

mklink [[/D] | [/H] | [/J]] linkName target

et alors :

2012-08-21T18: 05: 01Z: Réussite de générer [Plan du site Web] pour le site [....]

et où j'en avais besoin

prendre plaisir

1
Mea_Poulpa