«ДокуВики» может автоматически создавать карту сайта в формате XML, используемую такими поисковыми машинами как «Яндекс», «Гугл», «Бинг» и «Яху!».
Прежде чем продолжить, включите создание карты сайта, установив свойства sitemap в настройках конфигурации. Он будет доступен по ссылке: http://your_domain/dokuwiki/doku.php?do=sitemap
. В зависимости от наличия поддержки gzip в вашем PHP, файл будет именоваться «sitemap.xml.gz» (если gzip доступен) или «sitemap.xml» (если gzip недоступен). Почти во всех современных установках PHP поддержка gzip включена, поэтому файл будет называться скорее всего «sitemap.xml.gz».
При обновлении карты сайта «ДокуВики» HTTP-пингом автоматически информирует следующие поисковые системы:
Примечание: карта сайта будет содержать только ссылки на страницы, которые доступны без авторизации на сайте.
СДЕЛАНО: ?do=sitemap
ДОЛЖЕН разрешить ограничение пространства имён. Вы всегда можете иметь несколько файлов sitemap для различных целей и ?do=sitemap&ns=some_ns&ns=...
должны поддерживаться.
Для того, чтобы создавать карту сайта, веб-сервер должен иметь доступ на запись в файл «sitemap» в каталоге /data/cache/
. Создайте пустой файл sitemap.xml.gz
и измените права доступа к нему, чтобы убедиться в наличии права доступа1).
Если карта сайта не создаётся, можно попытаться получить отладочную информацию от индексатора (англ.), набрав http://yourserver/dokuwiki/lib/exe/indexer.php?debug=1
в адресной строке браузера.
Чтобы карта сайта была пересоздана, попробуйте временно установить для опции «sitemap» большое отрицательное значение.
Карта сайта связана с именем домена. Если карта сайта создаёт адреса вида http://domain.org
, то она не будет действительна для сайта с адресом вида http://www.domain.org
и наоборот. Чтобы убедиться, что используются канонические адреса, настройте параметр конфигурации baseurl или перенаправляйте «неправильные» адреса с помощью правил переадресации в файле .htaccess
:
Пример рерайта (для «Апача»):
RewriteEngine on RewriteCond %{HTTP_HOST} !^www\.domain\.org$ [NC] RewriteRule ^(.*)$ http://www.domain.org/$1 [R,L]