开启左侧

[学习借鉴] Discuz!论坛发帖自动退出登录状态的解决办法ZT

[复制链接] 1
回复
4646
查看
打印 上一主题 下一主题
楼主
跳转到指定楼层
发表于 2017-4-2 14:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
表现一:所有的人都登录不了
2 m; E" g) ^0 t) }5 z1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,
6 u2 O8 }$ m% s$ r比如你用http://www.zgwxbbs.com访问,那你就设定成
0 g/ \6 J) P* ~/ i/ i% ^" l  U0 I.zgwxbbs.com 即可。
5 B5 s4 O5 A& T# U8 D. L. I# V$ O- p/ D0 e0 I9 z& t% y, H3 a
2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)
9 \& C: G: D3 y5 ~/ `: F9 r有些人因为不小心删除了 {eval updatesession();} 而出问题
+ ]$ E5 ]2 D1 N" m解决方法:
2 s& N1 R; i8 p7 S4 [打开 footer.htm7 {  M4 S4 T# s; a: Y
查找 eval3 x4 V- [; G' {' G' [! i
看看有没有 {eval updatesession();} 和 {eval output();}9 f$ Z+ r7 C# G4 G4 d' l( T; S
如果没有 {eval updatesession();}4 Q* K+ y0 W5 P- q: \& ?# s4 o3 l
请查找 <!--{if debuginfo()}-->
- f, Q) c* e/ c. v在上面添加 {eval updatesession();}9 Z) q" y' \0 g. n. X6 f- h6 k
如果没有 {eval output();}
) G" h, f' w& w9 B# A,请在最后添加.<!--{eval output();}-->
8 _  ?7 C+ n7 [' i- `
. m" L  Y3 c/ O9 `7 {3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。
; m2 F7 T, f8 ~# J% I# H
/ z. L9 f9 q; F4、防止论坛自动跳转后退出
- |/ F/ i' O9 P4 `
: ?+ c7 o) b2 h2 o, h2 N6 i在 logging.php 中作如下修改:6 q# ?' s& Q8 d8 f$ f8 S3 Y
找到 showmessage('login_succeed', dreferer());
4 @( z( L6 }$ v在它上面添加一行:& c+ v" @7 w6 K% A3 ]! o
if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';' l1 Y! a4 }$ u$ q8 \1 u( e, G* e+ x
5、在logging.php中作如下修改:
8 i% o' m3 S4 ?& C查找 showmessage('login_succeed', dreferer());, o3 s! t) K, g' }& H
在它上面加 $sessionupdated=0;
* r" c% F1 `8 M) v
: k8 b5 E; j% U2 V% U6、程序问题
- M. }$ |$ M$ k7 H4 |+ m' n/ D1 g" W  _  f& H" A
一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。
' A- {" D+ @) i& |6 V: l8 L1 [7 |# V7 G$ |这时候,将程序的报错打开即可发现问题。1 u" f0 R9 o4 P' Z$ \
做法一:将 config.inc.php 中的 $errorreport 的值设置为 2" o* L$ b! D  H/ S
做法二:打开 include/common.inc.php 找到 error_reporting(0);/ [# p7 g& z8 x: f" p
修改为 error_reporting(7);
" X- J# C% F' R7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.
/ J) l8 ^5 Y6 C. U9 E' k解决方法:修改目录名为字母或数字格式就行了.
5 R( n; n# O$ J0 D6 |8 q; S. }, o! m/ W2 ?" R- A! g
表现二:部分人登录不了(找个人原因)7 a3 L8 T0 z# N
1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.9 i$ _2 g) C5 V2 p6 t
2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;
0 y: ?- z+ k% ~9 x3、个人机器没有打开 cookies8 ^2 P; r' r1 H, G4 L5 v5 b/ e
首先查询自己所使用的IE版本。9 ~; n- d) U( F% e) }
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标
- B+ c2 M8 V# b$ M; c
( [+ K6 d# E( m) c4 a题下第一行,就是有关版本信息。一般是,5.0或6.0。
  A9 Q% @0 Y0 J6 r6 U5 m5 K2 y. v) m* x% s7 R
A. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:
9 l% K7 _: N3 }. C. @2 ^
3 [+ z5 b6 a# Z1 \- i" }(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"; G* X! ^8 ~$ I( I
% K  c7 `; Y2 o6 v' M& c
隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:6 z+ ]6 t1 L) T# s  q
" y6 _/ C7 H. n& E/ s
覆盖自动cookie处理 (Override automatic cookie handling)
1 Z  k7 u8 T1 S- W* \; ]. m/ ~7 q% m. c4 }) y( v/ n
第一方cookie:接受 (First-party cookies: Accept)" X) A4 k' V5 R, t1 C( v
& v6 e7 E+ C7 h% \' D6 ?
第三方cookie:接受 (Third-party cookies: Accept)
3 D6 K, ~1 Y% J2 A/ V, N
. M' y; W5 L& L7 H总是允许会话cookie (Always allow session cookies)
% P' R& M" Z, ]/ b# ?: B4 M" j% z* u4 h: S9 {/ _  k
点击按钮"确定"(OK),关闭cookie设置窗口
( t9 W/ }$ P- ^; T! l
  d, B# _. I* q  i( ^, f点击按钮"确定"(OK),关闭Internet 选项设置窗口
' z4 u5 z4 `7 \" a" x3 k+ G' g5 A, e" i8 ]; q
* {( [/ z/ n/ \% t4 Z4 E
B.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:, o0 U3 P% x+ Z+ n& J) [; {  j
) G& s8 e+ V; E1 c3 T% j0 K
点击菜单条上的"工具"(Tool)
7 k- j$ {/ W; _% u- R8 j  n& @6 N. r: Z- w" F/ U
在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)
. [6 T/ x) \' p! ^, Y$ O  F) X. W0 l0 p  ?9 t, k/ D3 J6 B
在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。
- S* E9 Z1 R( X$ J) J) ]# R1 f" _0 n3 T) ~7 I! ]
在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized)
7 ?) I  R# e4 y! ?& x7 c- F0 ?, Y% R- G1 [! W1 T8 f0 X
在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:5 x* R3 k) }( C; G5 ^

5 Z7 C, `/ V% h0 P2 i允许使用存储在您计算机上的cookie:启用
5 ]. l+ L  _6 `. ?& [
4 U5 ]" P4 Y$ c+ }6 |* s允许使用每个对话cookie(未存储):启用
5 _: N0 S; U* W- u$ A3 g' y7 F0 A1 P
8 R' Q, E' w" N/ g" ?' L/ L7 t- K1 H# D7 h& t6 t: y" s
点击按钮"确定"(OK),关闭安全设置窗口
& J9 @7 ^4 @* i4 w- n
- r$ X% G1 X8 K( |6 `! u点击按钮"确定"(OK),关闭Internet 选项设置窗口( B4 N+ U1 A- _' K) W) n

5 Z$ U. [' S/ H* C  X6 O4 g. j: E- `! ^* l( ~
表现三:后台提示登录成功但是始终跳回登录口
! q0 R+ \, \; o2 l& k+ Q& i1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的2 H4 A* @+ M/ s( n! a) D& Y/ u

" A8 H! J# m# m3 \2 }! ~解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
$ p% G& M; s% @* z; j+ g0 @& K解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。
0 }/ ]" d) l2 H) k' L' E% t7 w; M& \8 Y3 e+ r% i
2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。# C, X) O# l8 g- D: w
解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。
' B0 W% c, u' R/ W; x8 B% d; g9 ^然后到后台的数据库校验,校验后修复一下其他表即可.# Y* B' {' ^7 T* Q, N4 ?! K. {
嗯,不错表现一:所有的人都登录不了7 J" X+ R! x! A+ j9 f- r5 w
1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,& T( W+ J( v5 _1 c. b
比如你用http://www.zgwxbbs.com访问,那你就设定成" P2 s, |4 I+ _; C2 B. e
.zgwxbbs.com 即可。6 d. n% a3 w% o6 Z  D. N" m" m& U! _

# n$ O8 m( c$ Q* |$ w5 M( s5 O2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)
' h- q" a, P8 Y) ]$ j有些人因为不小心删除了 {eval updatesession();} 而出问题- p3 r9 ~( }1 U& S" j
解决方法:2 @" W1 l/ i4 x% W- V
打开 footer.htm
2 ?% M/ F) B2 e5 z查找 eval
! x% l" P1 ~; p5 p看看有没有 {eval updatesession();} 和 {eval output();}3 P4 `  c5 t8 T- I  ^
如果没有 {eval updatesession();}) q" ]9 ~( h7 D. n0 e% k2 p
请查找 <!--{if debuginfo()}-->
5 Q4 o* A4 |# V. o( d) b/ w在上面添加 {eval updatesession();}
* P% }* h+ N) H1 }5 J$ M+ c如果没有 {eval output();}
, W$ @+ R3 p, J2 m0 W# \7 @" Y: u,请在最后添加.
0 @( q! a9 W! ?& f. u& v# A- z5 R* \; H! a
3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。& b" z( L7 x4 G" V
; @) Z  k& n/ K/ c% d4 A2 f- @. @
4、防止论坛自动跳转后退出
8 B. b4 j& y% v! d( `
3 l1 n5 ^# v* k! ^4 v+ ~在 logging.php 中作如下修改:
0 r; W5 o! N) C  y! ~! j, R找到 showmessage('login_succeed', dreferer());7 g/ d% Q, b/ f$ |4 e# R
在它上面添加一行:$ f- o( L; H! _- J5 a3 G) V
if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';2 L3 l1 n2 b1 x8 z$ Q: M
5、在logging.php中作如下修改:
9 i# G1 |" O7 }8 O0 f5 c查找 showmessage('login_succeed', dreferer());
/ G8 [! b- ~$ K0 x( [$ s在它上面加 $sessionupdated=0;- C. k: m2 y% r3 k5 L
" e1 a# A( v: U. G: z/ @
6、程序问题
- x6 W: X% z0 _3 z2 ^8 I2 Y& ^5 }4 J7 ?. Q
一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。
. O6 D9 O# I& X9 M% z6 q" Q0 \这时候,将程序的报错打开即可发现问题。# n# k5 q  D8 }, _& m2 z2 J
做法一:将 config.inc.php 中的 $errorreport 的值设置为 2
2 _# K+ Z4 R1 [& m做法二:打开 include/common.inc.php 找到 error_reporting(0);
( s2 u/ C2 k1 F, ^修改为 error_reporting(7);+ ~. b* ~  F* x* M& b: }
7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.
9 K1 K7 l! o8 L8 ~% `解决方法:修改目录名为字母或数字格式就行了., q9 a3 {0 T7 `& z' a% j) Z" q3 w
: G5 ~7 g& V6 {' N% f9 s
表现二:部分人登录不了(找个人原因). R9 _/ p9 Y- v; J4 ?
1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.( \( v; X' O. y) ]
2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;
% F  _+ A8 M4 y1 e- z! W9 x3、个人机器没有打开 cookies
2 I' G5 Y( t2 v& O首先查询自己所使用的IE版本。# i7 [5 M. p# i% z) w
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标! M% W5 U# f8 H
7 \8 M1 Q; u, }$ o4 M4 v5 |, R: V; o
题下第一行,就是有关版本信息。一般是,5.0或6.0。/ g7 c  F; q5 }  N/ e
8 U. b" }6 a7 m
A. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:
) @7 M3 i2 B: o+ g5 j6 z' {1 u
% l+ \+ m! N1 h  x- z' t4 a: [% A(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"
1 r; B# Z) G) r
9 k  |- m  Y4 r" P( u: H隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:
* m. G3 w9 e& i3 E5 s
- L2 P4 q% e0 c. S0 n覆盖自动cookie处理 (Override automatic cookie handling)
: d2 h- d+ C6 e8 W( [8 c* F
3 d# }. k6 T9 l0 M% k, d第一方cookie:接受 (First-party cookies: Accept)  l+ @( S% p" ~0 x4 ~4 A# @' v/ v

! B% Q- O- V8 G# g& q1 K第三方cookie:接受 (Third-party cookies: Accept); x4 i/ @  G/ x, G, [% L
0 k. @* B! f! N+ ~
总是允许会话cookie (Always allow session cookies)# W+ C/ X6 K8 i- z2 P; F1 |
- T6 j9 t! T9 t  {, F8 k
点击按钮"确定"(OK),关闭cookie设置窗口1 ]! d+ C. c$ N

5 ^5 m4 Y1 s* f; W点击按钮"确定"(OK),关闭Internet 选项设置窗口
* u/ W# m* i7 N; H& L9 I" a) w3 C+ Q
% h" L% j4 \; Q0 F0 d+ U& p3 H' j9 c
0 n( P, `* m9 q& `B.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:* F- i, p, g  s$ ?6 V) ?
7 r2 M3 U/ x" p
点击菜单条上的"工具"(Tool)
# u3 q5 B+ x' U3 K- J6 i
3 `( X; f9 L2 ]) b在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)
/ Y6 c. ^7 R7 O- S/ ^0 |. S  l0 u1 Z! W
在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。
6 P! G7 ~+ N3 l5 r) N
+ r& D: x9 o8 ~在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized); z  Q/ L" s: l9 R$ O  E# o

. R% w; A: N+ f' c在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:" t+ O% U0 z0 w" A9 S
2 {% O- i0 |, o  k7 U# u( }. i
允许使用存储在您计算机上的cookie:启用
# z. S# ]! W$ B8 i/ A& C! \* D1 S
1 u% o- }& y. R" d& ~* g; n8 \. D$ v, y允许使用每个对话cookie(未存储):启用6 }; _9 Y( m; a9 o6 g

* i! D8 A+ J0 J' V5 e4 F$ t
2 w( y" ~" X/ r# j点击按钮"确定"(OK),关闭安全设置窗口4 z7 ?/ f. [* r! T
$ k0 l9 o  G, ^0 c! z" ?
点击按钮"确定"(OK),关闭Internet 选项设置窗口
  v$ d5 t% P# O" |9 c$ q" F# k

* ^, T" o9 T) i  h( o" t9 A  Y表现三:后台提示登录成功但是始终跳回登录口
8 z% u+ Y" [. X/ O, w1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的0 q# H/ [& y7 |2 @/ R( u
- ], F3 o. P& _* T9 _
解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
# w. |2 Y( j" L: Q9 Q+ }$ o* c解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。% l1 ~' C" v0 G; }' V( F
7 O* s$ e" k. p; v( Z
2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。. X( Z# \8 Y1 J
解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。
, ?) t( ^- F3 G% T然后到后台的数据库校验,校验后修复一下其他表即可.
* g8 T* c' ~9 J- }! F# H2 P' G4 v# O  O9 t8 s$ N+ F8 k


转载请保留当前帖子的链接:https://www.beimeilife.com/thread-46002-1-1.html 谢谢
沙发
发表于 2017-4-2 14:22 | 只看该作者

5 [1 j- ^# O% s' ]discuz设置允许版主生成文章/发布文章的方法+ j# z  }' Z2 r* n0 Y) p

; _( J* l8 h* @' s! U* I0 Y管理员进入后台,用户,管理组,版主,基本设置,门户相关,发布文章-是
0 Q4 m! i. b! a' ~$ _! E: r* n9 y3 d以上设置后,在帖子上方的管理项中,会出现“生成文章”,但生成不一定会成功,还需要配置以下权限。
2 B; ]6 F- n; Z7 t
( ~1 P9 S5 l' l4 r1 v- `管理员进入后台,用户,管理组,版主,管理权限,其他权限,允许生成HTML文件-是
( A. G5 l! X0 c; ?" R设置完,更新缓存。" n. P# }1 |3 f4 V! k2 r
这样就可以直接发布静态文章,同时也能把动态帖子生成静态html文件了。
- z9 l6 f/ Y/ |8 c4 N, _
% L6 a$ K5 x/ p1 C. l( k# t5 o+ f( R* E5 O+ I" ]0 }$ i7 h
如果不想自动转化为HTML, 第二步就不用设置。
# a" X) H: V# Q; j+ ?: ?  y/ R
0 |2 q4 N* A$ V0 {, O( K8 k' n- b
- |' ?& c  t  S4 t6 t问题点:门户html页不显示登录状态(已经登录的显示退出,其实没有)

使用高级回帖 (可批量传图、插入视频等)快速回复

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

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表