1、首先启用分区伪静态的支持,以Nginx为例,在伪静态规则中加入:rewrite ^([^\.]*)/forum-([0-9]+)\.html$ $1/forum.php?gid=$2 last; ,重载Nginx即可支持以 forum-gid.html 访问分区。
2、修改页面链接。
首页:打开 forum/discuz 模板文件,搜索 <h2><a href="{if !empty($caturl)}$caturl{else}forum.php?gid=$cat[fid]{/if}" ,将 forum.php?gid=$cat[fid] 替换为 forum-$cat[fid].html ;
版块页:打开 source/module/forum/forum_forumdisplay 文件,将 Location: forum.php?gid=$_G[fid] 替换为 Location: forum-$_G[fid].html ,将 forum.php?gid='.$forum_up['fid'].' 替换为 forum-'.$forum_up['fid'].'.html ,将 forum.php?gid='.$forum_top['fid'].' 替换为 forum-'.$forum_top['fid'].'.html ;
帖子页:打开 source/module/forum/forum_viewthread.php 文件,将 ? 'forum.php?gid='.$fup : 替换为 ? 'forum-'.$fup.'.html' : (共两处);
发帖页:打开 source/module/forum/forum_post.php 文件,将 ? 'forum.php?gid='.$fup : 替换为 ? 'forum-'.$fup.'.html' : (共两处)。
若您喜欢这篇文章,欢迎订阅老张小站以获得最新内容。 / 欢迎交流探讨,请发电子邮件至 mail[at]vdazhang.com 。
/2014-11-09 16:32你好,按照你上面操作,面包屑导航获取不到分区版块ID
/2014-11-18 12:44你好,修改后网址仅仅少了fid吗?是这样吗: forum-.html ?四个位置都出现此问题,还是某个位置?
确认一下是否修改正确,注意下划线勾出的范围,不要掉符号。
我只在Nginx下测试过,不过在其它WEB服务程序下想来应该也没有问题。