Discuz最新回复帖子url链接实现伪静态化去除lastpost方法/Discuz3x Nginx伪静态设置

当我们采用discuz论坛程序建设的网站伪静态后,在论坛版块里面点击帖子转到帖子内容页是伪静态的地址。但是当我们点击论坛首页上面出现的“最后发表”“最新发表”等帖子标题时转到的具体的帖子内容页后发现帖子的地址却是动态地址:“网站地址/forum.php?mod=redirect&tid=$forum数字&goto=lastpost”。

本文主要介绍如何实现最新回复帖子的伪静态---解决discuz x3首页最后发表帖子地址伪静态:

具体解决方法:

在templatedefaultforumdiscuz.htm页面 查找:

forum.php?mod=redirect&tid=$forum[lastpost][tid]&goto=lastpost#lastpost  

替换以上代码为:

thread-$forum[lastpost][tid]-1-1.html 


【说明一下】以上代码的替换,是实现板块旁边的最近发表帖子链接的伪静态。至于dz四格的最新回复伪静态,大同小异。
是替换这个:

forum.php?mod=redirect&tid=$thread[lastpost][tid]&goto=lastpost#lastpost


修改为:

thread-$thread[lastpost][tid]-1-1.html



Discuz Nginx 伪静态规则

location / {  
            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;  
        }  

参考文章:
discuz论坛最新回复帖子url链接实现伪静态化去除lastpost方法
http://www.php2.cc/article-2164-1.html


 继续浏览关于 技术discuz 的文章

 本文最后更新于 2019/07/21 03:03:00,可能因经年累月而与现状有所差异

 引用转载请注明:icret > 教程 > Discuz最新回复帖子url链接实现伪静态化去除lastpost方法/Discuz3x Nginx伪静态设置