目次

「設定」に戻る

Nginxで、DokuWikiのURLを短く単純にする(xxx.com/test/start)




目的

この設定をすることで、以下のように見やすく、SEO対策にもなるURLに変更できます。

■変更前
http://dokuwiki.oreda.net/doku.php?id=start
http://dokuwiki.oreda.net/doku.php?id=test:start

■変更後
http://dokuwiki.oreda.net/start
http://dokuwiki.oreda.net/test/start


設定内容

/etc/nginx/conf.d/XXXX.conf

Naingxの場合は、configの中で以下の設定します。
参考:高負荷に耐えられるNginx+php-fpmでDokuwikiを使う準備

    rewrite ^(/)_media/(.*) $1lib/exe/fetch.php?media=$2 last;
    rewrite ^(/)_detail/(.*) $1lib/exe/detail.php?media=$2 last;
    rewrite ^(/)_export/([^/]+)/(.*) $1doku.php?do=export_$2&id=$3 last;


設定画面から.htaccessを使う設定に変更

Nginxなのに、.htaccessに設定します。

うまくいかないと管理画面にもログインできなくなってしまいます。別タブでログインして、設定画面に移動しておくと、失敗した時に設定を戻せます。また、事前にバックアップをとって戻せる状態にしておくのもオススメです。

設定 設定 補足
高度な設定
URLの書き換え
(userewritedanger)
.htaccess 注意。複数ログインしたり、バックアップをとってから行う。
URL上の名前空間の区切りにスラッシュを使用
(useslash)
チェック
TIPS

実際には、dokuwiki/conf/local.phpに設定されます。
dokuwiki.phpではないので注意してください。

$conf['userewrite']  = 0;                //this makes nice URLs: 0: off 1: .htaccess 2: internal
$conf['useslash']    = 0;                //use slash instead of colon? only when rewrite is on
userewrite 0 : http://example.com/dokuwiki/doku.php?id=wiki:syntax
1: http://example.com/dokuwiki/wiki:syntax
2 : http://example.com/dokuwiki/doku.php/wiki:syntax
useslash 0: http://example.com/dokuwiki/wiki:syntax
1 : http://example.com/dokuwiki/wiki/syntax





「設定」に戻る