DokuWiki は、Google、Yahoo、Microsoft などいくつかの大きな企業の検索エンジンで利用されている XML サイトマップを自動的に作成することができます。
サイトマップの作成機能は、設定項目: sitemap で有効にすることができます。サイトマップファイルは DokuWiki のインストールディレクトリのトップに設置されます。作成されるファイル名はインストールされている PHP で gzip が利用可能かどうかによって、sitemap.xml.gz (gzip が利用可能な場合) または sitemap.xml (gzip が利用できない場合) となります。最近のほとんどの PHP では gzip が利用可能ですので、ほとんどの場合、サイトマップファイルは sitemap.xml.gz となります。
サイトマップが更新されると、DokuWiki は以下の検索エンジンに対して自動的に HTTP Ping を送信し、更新があったことを知らせます。
サイトマップを作成するには Web サーバソフトウェアがサイトマップファイルへの書き込み権限を持っている必要があります。これを確実にする最も簡単な方法は、空の sitemap.xml.gz ファイルを作成し、そのファイルのパーミッションを適宜変更することです1)。
もしサイトマップが作成されない場合は、http://yourserver/dokuwiki/lib/exe/indexer.php?debug=1 のようにパラメータ付きでインデクサにアクセスすることにより、デバッグ出力を取得することができます。
サイトマップを強制的に再作成するには、設定項目: sitemap を一時的に負の大きな数字に変更してみてください。
サイトマップはドメイン名と結びつけられています。あなたのサイトマップファイルが http://example.com という形式の URL を含む場合、もしこのファイルが http://www.example.com 経由でダウンロードされると、サイトマップとしての有効性が無くなってしまいます (逆も同様です)。常に正しい URL が使用されるようにするには、設定項目: baseurl を設定したり、以下のように .htaccess ファイルで URL の書き換えを設定して「間違った」URL へのアクセスを正しい URL に転送するといった方法があります。
Apache の URL 書き換え設定の例:
RewriteEngine on RewriteCond %{HTTP_HOST} !^www\.example\.com\$ [NC] RewriteRule ^(.*)$ http://www.example.com/$1 [R,L]