Discuz!3.4论坛分区伪静态版块(gid)伪静态处理的方法墨晓柒2年前发布关注私信0648 在做完Discuz!论坛全站伪静态(Discuz!论坛全站伪静态方法)之后,余斗发现一个问题,就是分区版块的链接并没有被静态化,还是下面这种格式:/forum.php?gid=1,余斗想要实现伪静态为:/gid-1.html。需要进一步处理,其实很简单,两步即可: 一、修改模板文件 template/default/forum/discuz.htm,找到代码(大概在第345行): forum.php?gid=$cat[fid] 复制代码 修改为 gid-$cat[fid].html 复制代码 修改版块页模板文件 source/module/forum/forum_forumdisplay.php,找到代码(大概在第19行): Location: forum.php?gid=$_G[fid] 复制代码 修改为 Location: gid-$_G[fid].html 复制代码 找到代码 (大概在第75行): forum.php?gid=’.$forum_up[‘fid’].’ 复制代码 修改为 gid-‘.$forum_up[‘fid’].’.html 复制代码 找到代码 (大概在第84行): forum.php?gid=’.$forum_top[‘fid’].’ 复制代码 修改为 gid-‘.$forum_top[‘fid’].’.html 复制代码 修改帖子模板文件 :打开 source/module/forum/forum_viewthread.php 文件,找到代码(大概在第131和137行共两处): ? ‘forum.php?gid=’.$fup : 复制代码 修改为 ? ‘gid-‘.$fup.’.html’ : 复制代码 修改发帖页模板文件 :打开 source/module/forum/forum_post.php 文件,找到代码(大概在第125和131行共两处): ? ‘forum.php?gid=’.$fup : 复制代码 修改为 ? ‘gid-‘.$fup.’.html’ : 复制代码 二、把以下伪静态规则加入到我们做好的伪静态规则中,IIS服务器添加: RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^gid-([0-9]+)\.html$ forum.php?gid=$1%1 复制代码 Apache服务器添加: RewriteRule ^(.*)/gid-([0-9]+)\.html(\?(.*))*$ $1/forum\.php\?gid=$2 复制代码 最后要注意的是,这段伪静态规则一样要加在栏目规则的伪静态规则上面,Apache的是: RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^forum-(\w+)-([0-9]+)\.html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1 复制代码 iis是 RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^forum-(\w+)-([0-9]+)\.html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1 复制代码 Nginx rewrite ^([^\.]*)/gid-([0-9]+)\.html$ $1/forum.php?gid=$2 last; 复制代码 https://www.yudouyudou.com/jiaochengheji/wangzhanjianshe/752.html 温馨提示:本文最后更新于2022-09-12 12:07:02若文章内容或图片失效,请在下方留言或联系丁塔克。本站资源均为作者提供和网友推荐收集整理而来,仅供学习和研究使用,请在下载后24小时内删除,谢谢合作! © 版权声明 文章来源 DingTook.Com 隐私政策 PrivacyPolicy 用户协议 UseGenerator 许可协议 NC-SA 4.0 本站未注明转载的文章均为原创,并采用 CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢! 分享是一种美德,当你分享时请你附带上本文链接。 THE ENDdiscuz教程 点赞8 分享QQ空间微博QQ好友海报分享复制链接收藏