Manual:GenerateSitemap.php
Файл MediaWiki: generateSitemap.php | |
---|---|
Расположение: | maintenance/ |
Исходный код: | master • 1.42.1 • 1.41.2 • 1.39.8 |
Классы: | GenerateSitemap |
Подробнее
Файл generateSitemap.php является скриптом тех.обслуживания для генерации карты сайта для установленной MediaWiki. Карта сайта - это файлы, делающие работу поисковых роботов краулеров (например googlebot) более эффективной (когда бот поддерживает протокол sitemap.)
По-умолчанию, скрипт генерирует индексный файл sitemap и один файл с gzip-сжатием для каждого пространства имен, содержащего контент. Смотри #Опции для списка опций, которые можно передать в скрипт.
Возможно вам понадобится настроить работу cron для автоматического обновления карты сайта.
Для общих инструкций по использованию скриптов тех.обслуживания в MediaWiki, ознакомьтесь с разделом Руководство:Скрипты обслуживания .
Опции
--help
- отображает доступные опции для
generateSitemap.php
--fspath=<path>
- Путь в файловой системе для хранения, например
sitemap/
. Обратите внимание, эта директория должна быть доступна для просмотра онлайн!
--identifier=<identifier>
- Какой идентификатор сайта использовать для wiki, по-умолчанию $wgDBname
--urlpath=<prefix>
- URL, указывающий например на
--fspath
.- /sitemap/
- Если указано, получает префиксы имен файлов в индексном файле карты сайта. Необходимо, потому что некоторые поисковые механизмы Google требуют абсолютные URL в карте сайта. Вы должны так же указать
--server
; значения часто бывают похожими, но когда они отделены, это позволяет скрипту размещать даже необычные настройки. - Before MediaWiki 1.32.0 this parameter should contain the protocol and host name. However, since MediaWiki 1.32.0 the contents of this parameter will be appended to the
--server
parameter, thus it must neither contain protocol nor hostname. This is a breaking change not announced via the RELEASE-NOTES.
--server=<server>
- Протокол и имя хоста, для использования например в URL.
- Иногда необходимо, потому что обнаружение имени сервера может привести к неудачному выполнению скриптов в командной строке и будет показываться в xml файлах просто как "localhost" или "my.servername".
- If set, the value of
$wgCanonicalServer
will override the value of this option in all sitemap files except for the sitemap index file.
--compress=[yes|no]
- Использовать или нет сжатие для файлов карты сайта. По-умолчанию имеет значение
yes
.
--skip-redirects
- If this option is added redirects are skipped and thus not listed within the sitemap. This is recommended since Google can complain about redirects. However the default setting is not to skip redirects.
Пример
Создание карты сайта для Google Webmaster Tools:
mkdir sitemap
Затем:
Версия MediaWiki: | ≥ 1.40 |
php maintenance/run.php generateSitemap --memory-limit=50M --fspath=/path/to/examplecom/sitemap/ --identifier=example.com --urlpath=/sitemap/ --server=https://www.example.com --compress=yes --skip-redirects
Версии MediaWiki: | 1.32 – 1.39 |
php maintenance/generateSitemap.php --memory-limit=50M --fspath=/path/to/examplecom/sitemap/ --identifier=example.com --urlpath=/sitemap/ --server=https://www.example.com --compress=yes --skip-redirects
Версия MediaWiki: | ≤ 1.31 |
php maintenance/generateSitemap.php --memory-limit=50M --fspath=/path/to/examplecom/sitemap/ --identifier=example.com --urlpath=https://www.example.com/sitemap --server=https://www.example.com --compress=yes --skip-redirects
This will create a sitemap index stored at /path/to/examplecom/sitemap/sitemap-index-example.com.org.xml
which points to a compressed XML file for each namespace, e.g. /path/to/examplecom/sitemap/sitemap-example.com-NS_0-0.xml.gz
for the main namespace.
This does not mean your sitemap can now be found automatically! You will then need to submit the link for the sitemap index to the crawling site (eg Yandex or Google), i.e. https://www.example.com/sitemap/sitemap-index-example.com.org.xml .
Alternatively, you can make this findable by any crawler by adding a link to the sitemap index to your site root directory e.g.:
ln -s /sitemap/sitemap-index-example.com.org.xml sitemap.xml
Для нелатинских доменов используйте Punycode.
Связанные настройки в LocalSettings.php
Версия MediaWiki: | ≥ 1.13 |
$wgSitemapNamespaces
: Массив пространств имен, для которых будет сгенерирована карта сайта Google, или false если будет сгенерирована одна карта для всех пространств имен. По-умолчанию имеет значениеfalse
.
Версия MediaWiki: | ≥ 1.19 |
$wgSitemapNamespacesPriorities
: Собственный приоритет пространств имен для карт сайта. Это должна быть карта с соотношениями ID пространств имен к их приоритету. ПО-умолчанию имеет значениеfalse
.