Discuz添加Nginx伪静态rewrite规则的方法
介于UPUPW Nginx版独创的网站目录up-rewrite.conf伪静态支持文件,Discuz添加Nginx伪静态rewrite规则的方法非常简单。
1、进入Discuz后台管理打开全局-SEO设置-勾选需要的伪静态规则,我们默认全部勾选,提交保存。
2、点击右上角查看当前的Rewrite 规则URL 静态化,拖动滚动条到最下方找到Nginx Web Server复制规则
具体规则如下:
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;}
3、打开网站对应虚拟主机目录或upupw默认主机htdocs目录,这里要看你网站具体在什么目录
4、用notepad或其它编辑软件打开up-rewrite.conf文件(此处绝对不能用记事本打开编辑否则Nginx将不能启动)
5、黏贴之前拷贝的Nginx伪静态规则到up-rewrite.conf并保存
6、打开upupw控制面板输入rr 重启nginx服务,打开页面即可成功预览nginx伪静态规则添加后Discuz的页面效果。