当前位置:首页 > 开发教程 > discuz教程 >

Discuz!论坛发帖自动退出登录状态的解决办法

时间:2012-08-26 18:43 来源:未知 作者:后浪 收藏

表现一:所有的人都登录不了 1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名, 比如你用 http://www.sucaiko.com 访问,那你就设定成 .zgwxbbs.com 即可。 2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌) 有 表现一:所有的人都登录不了
1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,
比如你用http://www.sucaiko.com访问,那你就设定成
.zgwxbbs.com 即可。

2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)
有些人因为不小心删除了 {eval updatesession();} 而出问题
解决方法:
打开 footer.htm
查找 eval
看看有没有 {eval updatesession();} 和 {eval output();}
如果没有 {eval updatesession();}
请查找 <!--{if debuginfo()}-->
在上面添加 {eval updatesession();}
如果没有 {eval output();}
,请在最后添加.

3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。

4、防止论坛自动跳转后退出

在 logging.php 中作如下修改:
找到 showmessage('login_succeed', dreferer());
在它上面添加一行:
if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';
5、在logging.php中作如下修改:
查找 showmessage('login_succeed', dreferer());
在它上面加 $sessionupdated=0;

6、程序问题

一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。
这时候,将程序的报错打开即可发现问题。
做法一:将 config.inc.php 中的 $errorreport 的值设置为 2
做法二:打开 include/common.inc.php 找到 error_reporting(0);
修改为 error_reporting(7);
7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.
解决方法:修改目录名为字母或数字格式就行了.

表现二:部分人登录不了(找个人原因)
1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.
2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;
3、个人机器没有打开 cookies
首先查询自己所使用的IE版本。
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标

题下第一行,就是有关版本信息。一般是,5.0或6.0。

A. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:

(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"

隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:

覆盖自动cookie处理 (Override automatic cookie handling)

第一方cookie:接受 (First-party cookies: Accept)

第三方cookie:接受 (Third-party cookies: Accept)

总是允许会话cookie (Always allow session cookies)

点击按钮"确定"(OK),关闭cookie设置窗口

点击按钮"确定"(OK),关闭Internet 选项设置窗口


B.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:

点击菜单条上的"工具"(Tool)

在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)

在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。

在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized)

在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:

允许使用存储在您计算机上的cookie:启用

允许使用每个对话cookie(未存储):启用


点击按钮"确定"(OK),关闭安全设置窗口

点击按钮"确定"(OK),关闭Internet 选项设置窗口


表现三:后台提示登录成功但是始终跳回登录口
1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的

解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。

2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。
解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。
然后到后台的数据库校验,校验后修复一下其他表即可。

discuz教程阅读排行

最新文章