# Dokuwiki 配置 Rewrite 优化路径显示

- Link: https://www.ixiqin.com/2022/08/28/the-optimum-path-of-dokuwiki-configuration-rewrite-display/
- Published: 2022-08-28T06:00:00+08:00
- Author: 白宦成

Dokuwiki 在生成 URL 的时候，支持生成三种不同的 URL：

 * Rewrite 版: `/wiki:welcome?do=admin&page=config`
 * dokuwiki 控制版: `/doku.php/start?do=admin&page=config`
 * 默认版：`/doku.php?id=start&do=admin&page=config`

配置 Rewrite 可以让你的 wiki 的路径更加简单的和明确，屏蔽语言信息，因此，一般而言，
都建议大家配置上对应的 rewrite 规则。

在 Nginx 你的 Host 配置下加入如下规则，来实现 Rewrite 的转发

    ```javascript
        location / { try_files $uri $uri/ @dokuwiki; }

        location @dokuwiki {
            rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last;
            rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last;
            rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last;
            rewrite ^/(.*) /doku.php?id=$1&$args last;
        }
    Code language: JavaScript (javascript)
    ```

添加完成后可以执行如下命令来重启 Nginx

    ```shcb-line-numbers
    nginx -t 
    nginx -s reload
    ```

再回到 Dokuwiki 后台的配置管理器，找到 `userewrite` 这一项配置，将其配置为使用`.
htaccess`，并保存，即可将 dokuwiki 默认生成的 URL 变成一个更加干净的 URL。
