基于lnmp的disuz实现伪静态的方法如下 :
第一步:修改conf文件,找到站点.conf文件,LNMP在
/usr/local/nginx/conf/vhost
以域名命名的conf文件,打开域名.conf配置文件:
方法一:在server段??root 目录(网站所在文件夹)
这一行后面添加rewrite规则(DZ后台有,不同的程序、系统所需要的规则不同,本帖仅讨论LNMP的设置方法)? ?? ???以我的站点(http://bbs.idanw.net)为例,使用的是Nginx Web Server,添加如下rewrite规则:?rewrite ^([^.]*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2 last;
rewrite ^([^.]*)/article-([0-9]+)-([0-9]+).html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
rewrite ^([^.]*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
rewrite ^([^.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
rewrite ^([^.]*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
rewrite ^([^.]*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3 last;
rewrite ^([^.]*)/blog-([0-9]+)-([0-9]+).html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;
rewrite ^([^.]*)/(fid|tid)-([0-9]+).html$ $1/index.php?action=$2&value=$3 last;
rewrite ^([^.]*)/([a-z]+[a-z0-9_]*)-([a-z0-9_-]+).html$ $1/plugin.php?id=$2:$3 last;
if (!-e $request_filename) {
return 404;
}
注:如果在后台优化设置里修改了URL静态化格式,请查看rewrite规则后再修改conf配置,以上规则仅供参与!
方法二:如果conf配置文件有命令行:include discuz.conf;则可以通过修改discuz.conf,把rewrite规则(代码同上)修改到站点.conf配置里。
注:discuz.conf是LNMP添加域名、虚拟主机时你填写的rewrite规则所使用的文件,名称不一定是discuz.conf,x2.5版本可以直接使用discuzx.conf。
第二步:重启nginx,登陆SSH使用如下命令:/root/lnmp restart