腾讯云网站解决方案帮您轻松应对建站成本高/网络不稳等常见问题

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

1
回复
1452
查看
[复制链接]

765

主题

779

帖子

3万

积分

董事

Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72

积分
33025
发表于 19-4-4 16:39:08 | 显示全部楼层 |阅读模式      紫钻仅向指定用户开放  
                表现一:所有的人都登录不了+ U: B# x- Q* O& i  E
1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,* j+ A  S4 e7 a" X' o- ]  A% g
比如你用
http://www.qiuqiufa.com访问,那你就设定成6 R+ `0 B- ?" `- v" [
.qiuqiufa.com 即可。6 D- v- A8 d3 L" v/ p  K3 x, x4 C" W

- ^5 `) q7 u" K2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)" O+ ^# I7 l4 `9 c0 O+ G5 T
有些人因为不小心删除了 {eval updatesession();} 而出问题5 a! B4 W) \9 x% n* D
解决方法:/ t3 g8 L; N3 `
打开 footer.htm3 }: d! B5 Q  r% o( l7 h5 S  X
查找 eval) @" a! {% j; W3 b; C
看看有没有 {eval updatesession();} 和 {eval output();}: ~$ V7 C. ]) L9 ?" H
如果没有 {eval updatesession();}9 n: j( u2 r, }$ K* P
请查找 <!--{if debuginfo()}-->1 a4 b: x- y! k% l+ g" s6 V4 X, D& _
在上面添加 {eval updatesession();}3 O" O/ D0 r3 A4 ]4 f
如果没有 {eval output();}8 Y! v0 e- `" }% V8 [
,请在最后添加.2 ?: h/ l' y# r( o  j' D1 ]9 i

7 Y! V$ k* X  X3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。! w+ R" q1 f& O% W2 U

8 u# f/ |# W& h- |4、防止论坛自动跳转后退出' T" L( a7 C1 v: S0 f" \1 D# |2 b

/ w$ B7 O9 e! H1 g在 logging.php 中作如下修改:
# ~  r  D8 M0 y4 m% q% z' \找到 showmessage('login_succeed', dreferer());  ?# b  @! v  K* `, t4 c
在它上面添加一行:
; I( z9 d& @$ r: J) \5 q/ }if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';
( ^9 l! m  K8 @  o% ?! S$ Z5、在logging.php中作如下修改:- [" K8 h, L" G
查找 showmessage('login_succeed', dreferer());
% z% L( g1 i9 `, `在它上面加 $sessionupdated=0;
: G2 m1 j# J6 K' ?
7 y  m: O* q1 i& `1 p6、程序问题: k" U4 d# _/ F" n7 k
! l' ^/ i3 I1 a
一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。+ }: J) N  A* T, y
这时候,将程序的报错打开即可发现问题。
: a. Y( I; r- ^9 L, y% m# i+ J$ w做法一:将 config.inc.php 中的 $errorreport 的值设置为 2* }3 {. |- V1 \% {+ \" x
做法二:打开 include/common.inc.php 找到 error_reporting(0);  S1 n3 D4 n  T6 O4 g3 k; [
修改为 error_reporting(7);
4 P+ B3 u2 ^) B# V' b& Y0 {7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.
! K' S5 m2 [/ ?0 A+ r解决方法:修改目录名为字母或数字格式就行了.3 u& W! A9 o& w' W3 ?( P+ E

7 U8 o; K4 _6 B# W表现二:部分人登录不了(找个人原因)
7 M, K# w1 e3 j1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.
, F3 P; L! m0 l! q2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;) G- x* n5 H6 u: q5 S, l3 _
3、个人机器没有打开 cookies
5 e/ Y! Y7 `. V) H/ r首先查询自己所使用的IE版本。" {4 y- h- P, u5 {
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标
7 e: k, U4 d5 l+ E# D1 k$ X" M4 u
, d1 h' [, [# P+ T9 r. j题下第一行,就是有关版本信息。一般是,5.0或6.0。* S3 o4 C: x1 j4 H: O: a4 X' b# H

- k& X% ~3 @) @5 ZA. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:1 M$ U  e( K2 S0 Z
5 z* i1 r2 B6 W4 H) V% {' C& m
(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"/ j& ^5 i" y6 Y6 M& ^$ }

4 L; C: F1 L( R; R! J" V- f3 H隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:0 |$ t- f: g6 g, j

1 P: ?3 v! s5 M( k  U6 P- W覆盖自动cookie处理 (Override automatic cookie handling)
1 I. b* E/ V+ y8 y2 A
5 J3 T; D5 o0 S) n5 ]第一方cookie:接受 (First-party cookies: Accept). t, y' [# x, j# Q/ o

* i- _* a# c8 o. O* H5 _- |  q% C第三方cookie:接受 (Third-party cookies: Accept)
5 k: Y) r1 {! M2 m9 |) v8 m  i( {4 O" c+ s& u1 d) u) A
总是允许会话cookie (Always allow session cookies)% m- B% U( o) e; l& d. v; @
- ^" L& R1 Y: {1 t8 x
点击按钮"确定"(OK),关闭cookie设置窗口
" l% \) n" ~6 u' i" u; j5 S
7 U. {; u2 d2 E$ \! G点击按钮"确定"(OK),关闭Internet 选项设置窗口
& x: I1 _8 m" |9 C4 A
/ d5 K, B) ^/ I# g2 I6 t& |3 o& I# `. K
B.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:* P- m/ v+ j: J" Y' ~# v! C$ i% }
3 z1 V$ Z3 a( a3 p8 J
点击菜单条上的"工具"(Tool)
& `! I8 V9 |+ O! A6 I$ N
- v9 P9 L6 p3 ~( }/ t' x在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)( \  U% Z8 @& O; q
- A% O4 E7 B" V: H* A
在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。
1 [2 Q+ E* B& ^' [% Y& I7 Z
$ Y: k- t. c- u在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized)% W/ V* ^* Z# ^& q3 q0 I: E

3 _4 B3 |* G! y- P' ]+ L在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:5 U6 c( R* B6 x2 K- ?, \. c
  T7 e* y  H& ~) Q+ q7 C: I4 T
允许使用存储在您计算机上的cookie:启用& @) k7 [' B7 m
& D, e3 g9 m7 W2 K! [
允许使用每个对话cookie(未存储):启用
" ?$ S5 |* }6 i$ P; a5 v5 o  X) x5 v5 H  `* x/ J% P

& J9 b; x, j4 n+ f$ |  K点击按钮"确定"(OK),关闭安全设置窗口- P' S9 b0 {+ g, U9 k( f
. y& c  _' A, Q; F& F- X8 M/ x
点击按钮"确定"(OK),关闭Internet 选项设置窗口5 }. Y6 J9 `4 g; j# l8 q' ~1 A

: s* L! l" [3 p# l+ K& ^9 x5 D% H, U, F; O( n% I
表现三:后台提示登录成功但是始终跳回登录口3 _6 a4 C8 x* W9 A  f
1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的" q1 |" R, [/ o* Y# f* e! Z0 a
$ u- E2 \' b. Y/ e& h/ T
解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
3 T( T4 f! l8 b9 t; L* F% X0 @解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。* X: |& t$ S' w6 P- ^. @

% v& j2 l. _" m+ p" W: Q1 q2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。
, ?" h/ @9 {7 m8 j/ B8 O) {/ ^! I解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。7 g. q$ K* T+ K+ m; `2 o
然后到后台的数据库校验,校验后修复一下其他表即可.

4 Z3 D3 X- @, [, d 5 o( X7 m5 W* C+ q- z
            

0

主题

10

帖子

20

积分

1°伸手党

Rank: 2

积分
20
发表于 20-3-9 21:26:45 | 显示全部楼层         
Discuz!论坛发帖自动退出登录状态的解决办法
回复

使用道具 举报

网站简介

球球发,是一家 Discuz! 商业插件、风格模板、网站源码、 Discuz!运营维护技术等于一体的交流分享网站,全站95%的资源都是免费下载,对于资源我们是每天更新,每个亲测资源最新最全---球球发(如果我们有侵犯了您权益的资源请联系我们删除