北美网备份站

标题: Discuz!论坛发帖自动退出登录状态的解决办法ZT [打印本页]

作者: 北美生活网    时间: 2017-4-2 14:19
标题: Discuz!论坛发帖自动退出登录状态的解决办法ZT
表现一:所有的人都登录不了. B' y. [# O5 G! _4 V  @
1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,
" r8 D8 k1 X3 P( E" x& X1 h比如你用http://www.zgwxbbs.com访问,那你就设定成9 W0 C: r/ u% `: b) W+ \6 o8 Q
.zgwxbbs.com 即可。3 l/ C" f& C9 }8 l9 f5 M6 N

  i6 M' ^/ K, a9 E* |' P$ h. t& g8 P$ ]2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)/ d& _5 _: ^& A' }& C: [% q" h
有些人因为不小心删除了 {eval updatesession();} 而出问题- z3 H4 \/ j8 |( Q8 n, p
解决方法:1 r; f/ y& p0 j8 b0 X; j) Y
打开 footer.htm
* S: J2 d/ W' ]% i! l9 _查找 eval* S+ |  _" |9 p9 y/ b& G: Z
看看有没有 {eval updatesession();} 和 {eval output();}
2 a7 r( j' k# u) {8 x$ M如果没有 {eval updatesession();}% x& V8 h' `2 t+ ~& S/ X
请查找 <!--{if debuginfo()}-->
7 x, g7 M: |! R1 g" o5 z' k- J& M在上面添加 {eval updatesession();}
' Z  r& }: w" l4 g" @: d如果没有 {eval output();}
, H+ U0 ]" K( e" q6 f% [,请在最后添加.<!--{eval output();}-->9 A# q$ l- k2 x. n! s- ~3 \: v

( ^: q# L3 o4 j  T3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。
' q2 c* l; |! i2 s. A0 U, {: }  V8 @2 J" a
4、防止论坛自动跳转后退出
8 Y) v; s2 G3 Y# L2 `
6 O  C+ T0 |5 A- M在 logging.php 中作如下修改:" _) t; p3 [  ^6 H0 ?
找到 showmessage('login_succeed', dreferer());
: n5 g- E3 O4 s" H, U( x9 U+ ?在它上面添加一行:  G1 W" w$ M0 k2 j5 N4 A. H. n
if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';1 T" Q6 B; _! H
5、在logging.php中作如下修改:. x+ t8 _' x- d0 V0 n! E
查找 showmessage('login_succeed', dreferer());& N" p2 Q  O+ B3 @! ]4 F: c; V
在它上面加 $sessionupdated=0;/ f3 n$ s: O; B7 U1 w3 V  o

2 f* U; I. y% O6、程序问题
; K& Q; y& C3 t' Y' V/ O% j) }+ B2 V
一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。) O, O; @0 M6 X
这时候,将程序的报错打开即可发现问题。
5 t6 C4 H! A& p( Q做法一:将 config.inc.php 中的 $errorreport 的值设置为 2) V0 {$ j' o3 [8 G
做法二:打开 include/common.inc.php 找到 error_reporting(0);
" }& E+ k8 {1 G! F3 d: G2 |6 }% A修改为 error_reporting(7);
. d. H2 x, }- i/ c' t+ p7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.1 {$ W' a) G2 q, U2 T3 M$ |$ z' f
解决方法:修改目录名为字母或数字格式就行了.
: Q$ r4 b5 \9 F+ N( E0 j, h- W4 K( S/ t  D5 c- z
表现二:部分人登录不了(找个人原因)  {9 Y' x0 Z/ c& d$ w
1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.9 M! X; a" x/ r% j) ]& ]$ M
2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;) r, v4 ~4 t& Y- ]4 C
3、个人机器没有打开 cookies; y5 a  L& O$ M: ~" T3 Y
首先查询自己所使用的IE版本。. C: v( B- R4 ^7 a, A- j3 ~1 C# s7 L9 F
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标' M3 Y$ Q1 @9 b! ]* w2 k$ z, {

) p, a: ]; ]$ A" }题下第一行,就是有关版本信息。一般是,5.0或6.0。
) Q: l' M' W. C- \. o% B9 M; c+ \/ B; I7 E' w, X
A. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:" x4 X& \+ k. |

' h" H; u2 m& G. Y6 e+ r: z(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"' s8 Y9 R7 v1 g- A; D6 y
- A" t7 L& D7 D; \  _
隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:
/ r: G& P8 h$ l9 L- V1 O
( r4 u7 B; P$ F" a. {# T' Q% h覆盖自动cookie处理 (Override automatic cookie handling)* o6 Q1 k- E0 R" `

: J! ]4 f# Z  j# s0 @2 ]第一方cookie:接受 (First-party cookies: Accept)$ M" N6 p0 D1 V

8 C- D0 o, |. G' B: D4 l2 {7 c第三方cookie:接受 (Third-party cookies: Accept)
1 @( X0 }4 g/ w$ `( `7 D0 E0 e
: b4 y( H( y) _; j总是允许会话cookie (Always allow session cookies)/ a- [7 t6 z" E9 z
3 z* Z6 [+ Q) J3 W/ j
点击按钮"确定"(OK),关闭cookie设置窗口
* h% U6 q6 a5 r5 k* E/ g* m- Z* ?) P7 R0 z4 O- D1 b
点击按钮"确定"(OK),关闭Internet 选项设置窗口0 q' e2 E3 v! q$ Q1 A8 }. v

  N' @& I+ z) d) R: _& i7 w! j
* l7 g* \& h* I1 U! d/ i3 fB.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:0 m  z9 H3 {9 y9 c( L) \1 T
$ {* R3 t  m, b7 x" M
点击菜单条上的"工具"(Tool)
# z3 ?0 z/ H6 b" l! d7 F
6 G* H( I: E, H% K( M在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)
4 a# f% l  A( X4 `( u, P" z) Z5 w
& f2 S. c. p% Q在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。
* `9 c' E# T( X* x% X
6 x" d  G" {( b# w在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized)
4 K! W' u, K0 p  n  |4 ~0 d% p$ @& `; {" O7 J* @0 V/ x! I! w2 R$ r3 n4 V
在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:
; B* t; f. n# M! z# Y/ h; @5 W' K1 t9 s2 G. [
允许使用存储在您计算机上的cookie:启用; T9 ~3 `& ?% n% M
/ L/ W+ _. o+ `) F8 H
允许使用每个对话cookie(未存储):启用' K1 D6 z$ N) \3 C

. I$ J/ L5 n( F& ~' G3 s- v
6 [: W: r& y5 n1 M点击按钮"确定"(OK),关闭安全设置窗口
$ [5 v' q# e0 f, n0 S: r; y. H" L& o% p1 `
点击按钮"确定"(OK),关闭Internet 选项设置窗口
7 n0 T2 G8 V$ o- B/ d
; c, g/ y1 ~# p; c" w0 H; {' A& X6 e2 S9 i( u" l1 l1 m% [
表现三:后台提示登录成功但是始终跳回登录口* r3 n2 ]0 W# G$ p5 X# J
1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的/ M: x+ p1 @- N2 i  E

% c1 {* F0 n+ p3 C0 t解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
9 J4 X& o& j1 B6 m! j2 t9 u解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。0 ?: P" Q) I0 W5 c3 ^5 n% V
; p6 ?3 \/ m; L* i- A/ K
2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。
0 G0 R& ^4 _& x! h" t* U解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。
) \7 O( b5 h. v4 T6 {然后到后台的数据库校验,校验后修复一下其他表即可.
7 J) p8 s1 n5 M" `* j- A, ~嗯,不错表现一:所有的人都登录不了
! N" Q! e) a* f9 k6 k3 M1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,) {' j1 G" ^- d; S- u3 k
比如你用http://www.zgwxbbs.com访问,那你就设定成6 ]1 W& G3 I# V5 H
.zgwxbbs.com 即可。
4 Q! U8 ~$ t+ [: X) Y! K0 A8 ?6 B) P
2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)
: D0 F% p4 l4 x4 B9 V1 L: Z6 y有些人因为不小心删除了 {eval updatesession();} 而出问题
0 x. l) f& v/ s( l  L4 k; x' {" W解决方法:$ u' }5 H  O5 a
打开 footer.htm: N+ [( Z6 D' l3 l4 I6 O* u
查找 eval, M' i4 U- D* {) j% p2 K2 K& u
看看有没有 {eval updatesession();} 和 {eval output();}
" T5 Y5 P6 F! @8 _  N- q如果没有 {eval updatesession();}
2 h, k3 O( n9 x7 Z2 W请查找 <!--{if debuginfo()}-->8 o( ?! L* ~6 V6 f, x
在上面添加 {eval updatesession();}
4 m3 i. C9 b: J如果没有 {eval output();}0 B! q# l/ r3 P7 P/ R) i
,请在最后添加., W0 q- }! s3 k' y8 f0 n
9 P4 V# u! P5 Y" D$ Q5 ?2 o, c: l1 ~
3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。& f  w: s' A8 e
9 A; {3 I& D  v& e
4、防止论坛自动跳转后退出" L; K- U1 V3 U/ |% W
) H, i& M; s: p; i
在 logging.php 中作如下修改:
) ?8 H9 g( {* a  Z' _找到 showmessage('login_succeed', dreferer());
. f4 d! k4 U: T. b1 a! d在它上面添加一行:1 D: m/ Z3 L% k$ M* O
if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';
* `- V+ R" t& u: R# y5、在logging.php中作如下修改:9 }% ?) G5 F& j/ x
查找 showmessage('login_succeed', dreferer());) r( Y' W+ \8 H6 X9 c% T
在它上面加 $sessionupdated=0;4 L8 U- b) a7 k9 E$ Q

5 W) t0 |% j  A' @! Q& f$ X6、程序问题/ D  m) B8 \3 C  B; @8 n
' C+ U* R: R3 V
一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。3 |8 k: K3 s: }
这时候,将程序的报错打开即可发现问题。
) t% Y6 i1 b& c7 J3 f做法一:将 config.inc.php 中的 $errorreport 的值设置为 2# }# o9 @; l$ \' A0 D6 y& P6 R
做法二:打开 include/common.inc.php 找到 error_reporting(0);
' h: G7 G3 i$ \+ @/ ~修改为 error_reporting(7);" L2 v7 X7 a6 |* D3 Y( o: v
7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.7 Y1 X  w8 m' H1 a2 F* Z! i- X8 c
解决方法:修改目录名为字母或数字格式就行了./ O! Y- _3 W" Q; m

& }& f! Z* e, C/ E+ V) P- }表现二:部分人登录不了(找个人原因)
" `4 c1 {% m& w5 p1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.1 {4 W. \# k0 U+ B6 }
2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;
0 E$ _3 K" F3 |3、个人机器没有打开 cookies
/ F: d8 T' m' C2 {首先查询自己所使用的IE版本。2 ~- _5 P2 R3 b) U+ G* t+ S( c
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标( K5 ], ?# ]" Q: F) g/ R. {

6 P) Y5 a- P/ T) @& D题下第一行,就是有关版本信息。一般是,5.0或6.0。
. W5 t: u8 g) D5 q
% I2 `! B' {0 l1 l: `9 a( GA. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:
' g  q4 s5 `) s; P; K4 S$ [9 Q4 d, G
(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"
6 ]7 r9 m  N( v- F
. U! ]5 u9 F7 T+ G! N0 H5 a. m隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:
  t( @  d1 i$ Z- I: ^1 x
! t& A9 U) j) y# H" l- w覆盖自动cookie处理 (Override automatic cookie handling)
' t6 r8 l& p+ |- T
/ g. H  `# `8 K, q2 c# b4 }第一方cookie:接受 (First-party cookies: Accept)6 y* U+ v/ Z8 P

1 @9 d' d& N) w. z& r: G8 H第三方cookie:接受 (Third-party cookies: Accept)/ j) S& C$ S" @- N. C
4 [- \+ Q1 S) C0 f" x" `! i
总是允许会话cookie (Always allow session cookies)
( z6 T4 ^2 \4 _
3 w3 U. j9 w3 _2 p点击按钮"确定"(OK),关闭cookie设置窗口
4 u$ G- e& a! N+ o1 c
/ z- c8 g- f* H: _7 z& m点击按钮"确定"(OK),关闭Internet 选项设置窗口; I# g2 S! m' q1 q! G

6 \# H1 B7 l# G; P/ T2 [6 {: ~6 y, k
: m& R$ V7 M# J% v8 z  w0 @4 D0 r3 [0 EB.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:
0 {) f4 J* _& Z7 C" q5 U/ ~6 X
. R7 Z. ^* I4 {$ f点击菜单条上的"工具"(Tool)
4 G3 h  B1 Q# {  t) q
) K0 K' U" B! I+ T3 l% c% c+ ^在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)
( p3 a4 H$ p+ G5 \1 n9 ]9 |$ ?
$ r" @9 w% x  n: i) Z7 k. u在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。
4 c$ F5 z, V; p4 a3 _7 R; ^3 Q8 e9 g2 `( H
在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized)* }" \6 f0 I: k9 H: x4 _

( o+ l9 f5 X# L' w; u在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:
) t$ ^: c8 J8 d# I( S* \/ L" Z& T3 h+ g4 e
允许使用存储在您计算机上的cookie:启用; [9 Y% j, |) [  c8 a
) `3 p9 l# v/ w$ d& L
允许使用每个对话cookie(未存储):启用3 ]0 u0 R! I( O. A& |8 @& H
' Z  w' z* b& @7 V% c/ _& Y
) d, s% N3 G3 r9 {$ J
点击按钮"确定"(OK),关闭安全设置窗口2 o6 t& \5 d6 ]0 R7 D9 c! o- Q
4 ~  H4 ^+ U# n  v% m
点击按钮"确定"(OK),关闭Internet 选项设置窗口
9 E# o( S7 X, `. u5 a
6 J' ~$ x, ]1 u" J1 q
# `  j4 N1 ^$ I+ Y( |表现三:后台提示登录成功但是始终跳回登录口
; j# i* ?1 Y0 u( C, d+ `1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的
9 y% y4 `& N. Q2 M
9 k6 G+ a- T4 `& W( k" }5 l解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
3 H0 @( a+ r: ~解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。3 d' t  i/ d8 M! m% T: z& y

$ h7 B  a5 f/ `9 ~0 K! d' ?6 R2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。6 t3 [+ F4 Y* W1 S! g
解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。
. Z% U/ Y( {7 A- \" @然后到后台的数据库校验,校验后修复一下其他表即可.
5 O$ I; ?, x& Y: M
( k9 D; S. ^4 y7 q5 ~: d$ |9 O
作者: 北美生活网    时间: 2017-4-2 14:22

: T' ?0 |% c2 @8 e) V- R1 Ydiscuz设置允许版主生成文章/发布文章的方法& n9 U4 v( r3 U6 V# d

% s* z# t6 Q. N0 ?" v管理员进入后台,用户,管理组,版主,基本设置,门户相关,发布文章-是
9 j6 Z+ L/ @2 a% C3 p- v2 y以上设置后,在帖子上方的管理项中,会出现“生成文章”,但生成不一定会成功,还需要配置以下权限。
9 p$ {' y# S4 q
" c( M6 f1 v0 `管理员进入后台,用户,管理组,版主,管理权限,其他权限,允许生成HTML文件-是
( g/ R/ e9 w3 a2 [( x4 h设置完,更新缓存。7 H# I( R) A* k
这样就可以直接发布静态文章,同时也能把动态帖子生成静态html文件了。' r$ a* S& T# l8 Z* A
; h% I7 S# y7 h9 K* A

4 F0 a( G/ K: ~$ E如果不想自动转化为HTML, 第二步就不用设置。9 W- x. j2 E3 a) c4 B7 c
6 A  t* ^+ n9 D; [% t4 Q" E

! m7 _+ Z8 N- b0 i问题点:门户html页不显示登录状态(已经登录的显示退出,其实没有)




欢迎光临 北美网备份站 (http://beimeilife.duckdns.org/) Powered by Discuz! X3.2