discuz 论坛什么都好就有一点就是有很多页面附带了 forum.php 这个尾巴,这个 forum.php 尾巴所带来的坏处是对 seo 不友好,既然不友好那么我们就要想办法让它友好,这个办法就是修改代码,下面酷米论坛站长教大家如何去掉 forum.php 这个尾巴,Discuz 官方论坛有很多类似的教程,那些都不齐全,本人也试过,如果按照他们的方法去是可以去掉,但是会带来一部分问题,比如某些页面不能伪静态了,如果有不对的地方请指教。
修改代码前请备份好我提到要修改的文件,如有出错本人不负任何责任
要说带尾巴的页面有很多,但是有些根本就没必要去掉,那么我们只要去掉一些对 SEO 有用而没有后顾之忧的 forum.php 尾巴,第一个是导航栏的 forum.php 尾巴。
这个尾巴怎么去掉呢? 首先打开后台--全局--域名设置--应用域名,在默认这里填写论坛的域名 (官方有很多人多说在论坛那里填写域名,但是有一点就是不配置默认域名根本就不能填写其他地方的域)
填写完默认域名后在后台--界面--主导航,在这里创建一个导航,这个导航是代替默认的那个,名称你想设置成什么就设置成什么,链接地址那里填写 「/」 就可以,详情请看图:
然后进入你的空间或者主机 (这里以我的 IIS6.0 做演示,右击站点--属性--文档,添加 forum.php 进去,然后把 forum.php 移到第一位 (只有这样服务器才能找到主页文件,要不然打开首页会出现 404 页面),详情请看图:
到这里导航栏的 forum.php 尾巴去掉了,接下来就是首页搜索下面的导航的 forum.php 尾巴了。
要想去掉这里的 forum.php 尾巴,首先打开 template/default/forum/discuz.htm 然后搜索如下代码:
把其中的 forum.php 改为./然后保存,这样首页搜索下面的 forum.php 尾巴就去掉了,不要急还有请耐心看下去。
接下来就是分区那里和版块主图列表的导航了。
打开 template/default/forum/forumdisplay.htm 然后搜索如下代码:
详情请看图:
把其中的 forum.php 改为./ 然后再搜索如下代码:
{lang return_index}
把其中的 forum.php 改为./ 这样分区与版块主题列表下面的 forum.php 尾巴就彻底去掉了,接下来是帖子页面那里的尾巴了。
打开 template/default/forum/viewthread.htm 然后搜索如下代码:
把其中的 forum.php 改为./ 这样帖子页面的 forum.php 尾巴就去掉了,把上述的尾巴去掉以后全论坛就看不到 forum.php 这个尾巴了,有些站长可能会说还有什么列表按钮,帖子的下一页上一页那些地方的尾巴没去掉,经过本人实践那些地方的 forum.php 不能去掉,去掉了出问题,比如去掉主题列表页上一页下一页的 forum.php 尾巴会导致第二也以后的页面不能伪静态等等问题,如果你站点开启了伪静态只需要在 robots 文件里面加入
Disallow: /?*
这个一条那么搜索引擎就不会收录你站点的动态页面,这样就不会造成动态与静态都收录的问题,如果您还是看不懂那么我真的无语了,我想我表达的够详细了。