Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Discuz伪静态URL重复问题解决方法

[复制链接]
kyxt 发表于 2008-7-15 11:03:31 | 显示全部楼层 |阅读模式
问题:
例如这个地址:http://bbs.idcspy.com/thread-9309-1-1.html ,第一个数字9309代表帖子的id,第二个数字1代表这个主题的第一页,第三个数字1代表这个主题在这个版的第一页。但是随着帖子的增加,这个帖子会跑到第二页,第三页。。。。然后最后这个数字就会不断变化。也就是说Discuz的url在不断变化.Discuz虽然设置了如果是蜘蛛抓取,最后一位返回是1,但是还是不能从根本上解决问题。它只解决了搜索引擎直接到你的网站抓取的网页地址是单一的,但是如果别的网站引用你的帖子地址,还是会出现URL地址重复的问题。
我们这里给出的解决方案是直接修改Discuz控制伪静态地址的函数,最后一个数字始终输出为1,这样可以保证rewrite之后的地址是单一的,但是缺点是URL不能给discuz正确传递参数,所以如果返回版面的时候只能返回到改版的首页而不能返回到该帖所在的页面。

解决方法:
修改Rewrite的格式,最后一个数字统一用1代替。解决url变化和重复的问题
修改文件include/global.func.php的:
  1. function rewrite_thread($tid, $page = 0, $prevpage = 0, $extra = '') {
  2.         return '<a href="thread-'.$tid.'-'.($page ? $page : 1).'-'.($prevpage && !IS_ROBOT ? $prevpage : 1).'.html"'.stripslashes($extra).'>';
  3. }
复制代码

改为:
  1. function rewrite_thread($tid, $page = 0, $prevpage = 0, $extra = '') {
  2.         return '<a href="thread-'.$tid.'-'.($page ? $page : 1).'-'.'1'.'.html"'.stripslashes($extra).'>';
  3. }
复制代码



(从第一次发布的wiki复制过来的,有些加了wiki的链接)
sonpyy 发表于 2008-7-15 22:36:41 | 显示全部楼层
好用吗(::24::) (::24::)
回复

使用道具 举报

sonpyy 发表于 2008-7-15 22:37:29 | 显示全部楼层
试了一下,果然不错
回复

使用道具 举报

疯狂浪子 发表于 2008-10-30 09:34:45 | 显示全部楼层
学习,留个标记··

修改测试一下 呵呵
回复

使用道具 举报

besthome 发表于 2008-10-30 11:09:29 | 显示全部楼层
楼上的翻出这个帖子,的确不错!推荐!!对于解决google管理工具中的重复性标题和描述,很有解决作用。
回复

使用道具 举报

reo126 发表于 2008-10-31 09:21:28 | 显示全部楼层
论坛被K的可以试试
回复

使用道具 举报

lcblbbs 发表于 2008-10-31 12:30:15 | 显示全部楼层
以前提过这个问题。但没人重视。
其实,解决的办法在于标题上加上第X页,这样就避免重复标题。
回复

使用道具 举报

woaixiaoshao 发表于 2008-10-31 13:36:33 | 显示全部楼层
我试试去
回复

使用道具 举报

86975712 发表于 2008-10-31 14:03:36 | 显示全部楼层
顶~试试看~
回复

使用道具 举报

a624762500 发表于 2008-12-16 18:15:45 | 显示全部楼层
http://xinyi.biz 用上了,大家测试看
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-17 00:27 , Processed in 0.028000 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表