raksmart活动促销

分享

写回答

发帖

国外DZ论坛URL被网监封锁的解决方法

国外虚拟主机 国外虚拟主机 15037 人阅读 | 10 人回复

发表于 2006-12-8 15:45:49 | 显示全部楼层 |阅读模式

问题:
屏蔽了国外空间含有“fid=4*” 和“bbs/viewthread.php”  的URL地址,具体情况表现为国外空间搭建的DZ论坛,主页浏览正常,点击进入fid=4*的论坛版块和浏览帖子时,会出现“该页无法显示”或者“网络衔接被重置”错误,并且无法继续访问,1分钟以后恢复正常.原因可能是很多A论坛都是在国外空间搭建并且使用DZ论坛程序的,这成为中国网监的一项新的屏蔽规则.

解决方法:
1。避免fid=4的解决方法有两种:
一种是想办法避免以4开头的论坛板块的出现,具体方法如下,同时可以参考:http://bbs.idcspy.com/thread-2735-1-1.html
1.运行SQL语句用这条语句可以完成,(新论坛直接运行下面语句。如果是旧论坛的话 fid=1的分区会被帖子引用,因此可能造成帖子会找不到的情况。会sql语句的站长自己新建分区然后用下面的语句把fid改一下就行了)
update cdb_forums set fid=50 where fid=1;         fid=1为默认论坛的id,每个论坛都有的
update cdb_forumfields set fid=50 where fid=1;

2.如果不会语句,可以这样
已开始可以多建几个分区,乱建50个分区,然后后面的就没有问题了,所有分区建好后,然后把前面50个分区删除掉就行了。呵呵。麻烦了点。但是不用动代码,以后升级也不用很麻烦。
如果已经建好所有的分区,则把有问题的分区重建一次,然后删除有问题的分区就行了。目的是为了绕过那几个序号。

另外的方法就是启用伪静态就可以避免了。

2。避免bbs/viewthread.php
很多论坛都是安装在BBS目录下,因此这个关键词的屏蔽影响了许多论坛,解决方法有以下两种:
一种是修改论坛路径,把bbs修改为其他名字即可。建议不要修改为forum等与论坛相关的常用词,要么再被封了就得再修改了。这样做的弊端是对论坛的宣传效果影响比较大,为了使原来的会员访问到还需要加跳转。
另外一种方法是启用伪静态。这样在一般的浏览中避免了bbs/viewthread.php,但是在发表帖子以及回复等时候还会遇到bbs/viewthread.php,为了避免可以让帖子发表或者回复以后直接跳转到帖子列表页即可,修改方法如下:

第一步打开include/newthread.inc.php

找到
showmessage('post_newthread_succeed', "viewthread.php?tid=$tid&extra=$extra");


改成
showmessage('post_reply_succeed', "forumdisplay.php?fid=$fid");


第二步打开include/newreply.inc.php

找到
showmessage('post_reply_succeed', "viewthread.php?tid=$tid&pid=$pid&page=".(@ceil(($thread['replies'] + 2) / $ppp))."&extra=$extra#pid$pid");


改成
showmessage('post_reply_succeed', "forumdisplay.php?fid=$fid");


修改之后回帖或者是发帖之后就自动跳转到帖子列表页了。
为了使显示的提示和实际符合可以做如下修改:
在templates/default中找到messages.lang.php文件(如果不是默认模版到对应目录找)
找到
'post_reply_succeed' => '非常感谢,您的回复已经发布,现在将转入主题列表页。<br><br><a href=\"forumdisplay.php?fid=$fid\">[ 需要转入主题列表请点击这里 ]</a>',


非常感谢,您的回复已经发布,现在将转入主题页。修改为 非常感谢,您的回复已经发布,现在将转入主题列表页。 即可

修改发新帖的提示找到:

'post_newthread_succeed' => '非常感谢,您的主题已经发布,现在将转入主题列表页。<br><br><a href=\"forumdisplay.php?fid=$fid\">[ 需要转入主题列表请点击这里 ]</a>',


修改即可。

提供了几种方法,建议选择伪静态加修改帖子跳转页面的方法,尤其是当你的论坛之前就启用了伪静态,只需要修改跳转页面就可以正常使用了(避免出现fid=4*),这样的话比较简单,也不会很大的影响论坛原来的宣传效果。
本论坛就是采用这种方法,http://bbs.idcspy.com

[ 本帖最后由 大漠孤狼 于 2006-12-8 05:29 PM 编辑 ]

回答|共 10 个

witbb

发表于 2006-12-8 16:23:41 | 显示全部楼层

赞一下

mei2001

发表于 2006-12-8 16:30:13 | 显示全部楼层

原帖由 大漠孤狼 于 2006-12-8 03:45 PM 发表
2。避免bbs/viewthread.php
很多论坛都是安装在BBS目录下,因此这个关键词的屏蔽影响了许多论坛,解决方法有以下两种:
一种是修改论坛路径,把bbs修改为其他名字即可。建议不要修改为forum等与论坛相关的常用词,要么再被封了就得再修改了。这样做的弊端是对论坛的宣传效果影响比较大,为了使原来的会员访问到还需要加跳转。
另外一种方法是启用伪静态。这样在一般的浏览中避免了bbs/viewthread.php,但是在发表帖子以及回复等时候还会遇到bbs/viewthread.php,为了避免可以让帖子发表或者回复以后直接跳转到帖子列表页即可,修改方法如下:

請問怎樣加跳轉?

witbb

发表于 2006-12-8 16:38:43 | 显示全部楼层

底下的方法,就是让你在发贴或是回复的时候跳转到列表的

witbb

发表于 2006-12-8 16:39:46 | 显示全部楼层

showmessage('post_reply_succeed', "viewthread.php?tid=$tid&pid=$pid&page=".(@ceil(($thread['replies'] + 2) / $ppp))."&extra=$extra#pid$pid");

也是改成

showmessage('post_reply_succeed', "forumdisplay.php?fid=$fid");

mei2001

发表于 2006-12-8 16:46:58 | 显示全部楼层

我暈~~~~~我是想目錄如何加跳轉

为了使原来的会员访问到还需要加跳转

witbb

发表于 2006-12-8 17:00:35 | 显示全部楼层

可以在BBS目录下建个HTM文件,插入下面代码
  1. <script language=javascript>

  2. setTimeout("location.replace('"+要转入的页面+"');",1000);

  3. </script>
复制代码



或是在head后插入
  1. <meta http-equiv="refresh" content="1;url=http://www.jyjy.net.cn">
复制代码


等待时间都为1秒

大漠孤狼

发表于 2006-12-8 17:30:13 | 显示全部楼层

原帖由 witbb 于 2006-12-8 04:39 PM 发表
showmessage('post_reply_succeed', "viewthread.php?tid=$tid&pid=$pid&page=".(@ceil(($thread + 2) / $ppp))."&extra=$extra#pid$pid");

也是改成

showmessage('post_reply_su ...


是的,当时复制错了,把上面的复制过来了

大漠孤狼

发表于 2006-12-8 17:31:27 | 显示全部楼层

原帖由 mei2001 于 2006-12-8 04:30 PM 发表

請問怎樣加跳轉?


比较麻烦,要用国内的空间,要么没访问到跳转页面就被封了。

PKman

发表于 2006-12-8 20:18:10 | 显示全部楼层

好像国内的论坛也有这个毛病了
您需要登录后才可以回帖 登录 | 注册

本版积分规则