Dokuwiki在Apache上安装很简单,这里说说在Nginx的设置。
一、禁止DOKUWIKI敏感目录的访问
在Apache下,因为各目录下的.htaccess文件已经设置好了,所以无需任何修改就可以用,但是Nginx下不仅要禁止目录访问,还要加密目录,否则输入文件名依然可以下载。加密目录的方法请参看LNMP下为Nginx目录设置访问验证的用户名密码。下面是配置文件。
location ^~ /conf/
{
deny all;
auth_basic "Authorized users only";
auth_basic_user_file 验证文件路径;
}
location ^~ /data/
{
deny all;
auth_basic "Authorized users only";
auth_basic_user_file 验证文件路径;
}
location ^~ /inc/
{
deny all;
auth_basic "Authorized users only";
auth_basic_user_file 验证文件路径;
}
location ^~ /bin/
{
deny all;
auth_basic "Authorized users only";
auth_basic_user_file 验证文件路径;
}
或者在配置文件里添加
location ~ /(data|conf|bin|inc|vendor)/ {
deny all;
}
二、NGINX下配置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;
location /
{
if (!-f $request_filename)
{
rewrite ^(/)(.*)?(.*) $1doku.php?id=$2&$3 last;
rewrite ^(/)$ $1doku.php last;
}
}