一聚教程网:一个值得你收藏的教程网站

热门教程

Nginx环境中DokuWiki伪静态设置规则

时间:2022-06-30 18:26:49 编辑:袖梨 来源:一聚教程网

下面是个人的Nginx vhost配置文件,添加到nginx重写规则中,供参考:

server {
listen 80;
server_name 111com.net  www.111com.net ;
access_log /data/wwwlogs/111com.net _nginx.log combined;
index index.html index.php duku.php;
include /usr/local/nginx/conf/none.conf;
root /data/wwwroot/111com.net ;
 
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 ^/(?!lib/)(.*) /doku.php?id=$1&$args last;
    }
 
location ~ [^/].php(/|$) {
    #fastcgi_pass remote_php_ip:9000;
    fastcgi_pass unix:/dev/shm/php-cgi.sock;
    fastcgi_index index.php;
    include fastcgi.conf;
    }
 
location ~ .*.(js|css)?$ {
    expires 7d;
    access_log off;
    }
}

核心规则如下,需要加入server段内:


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 ^/(?!lib/)(.*) /doku.php?id=$1&$args last;
    }
location ~ .*.(js|css)?$ {
    expires 7d;
    access_log off;
    }
下面一步,将conf/local.php中加入一行:
1
$conf['userewrite'] = 2;
最后修改dokuwiki后台设置,后台 -> 管理 -> 配置管理器 -> 高级设置 -> 使用更整洁的 URL,选中.htaccess保存后查看效果。

热门栏目