北美网备份站
标题:
Discuz!论坛发帖自动退出登录状态的解决办法ZT
[打印本页]
作者:
北美生活网
时间:
2017-4-2 14:19
标题:
Discuz!论坛发帖自动退出登录状态的解决办法ZT
表现一:所有的人都登录不了
x6 e: e) c; J. }
1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,
* u! j8 t M4 r; ^: q) S9 S; O Z; B
比如你用
http://www.zgwxbbs.com
访问,那你就设定成
2 b! J- D" K- u% ^2 R/ ?
.zgwxbbs.com 即可。
6 }6 Z+ Y* o5 H* G" u3 I
! U- m4 G+ s+ P' G
2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)
V$ j; z6 F2 R9 g2 u o
有些人因为不小心删除了 {eval updatesession();} 而出问题
# n* ^! d; x$ ~
解决方法:
9 [5 R/ c) s( }5 r0 \ u
打开 footer.htm
1 t- N& v* M' D( o6 d! ], }6 S; I
查找 eval
; W: j4 j5 K( h6 N/ @- E* _5 K
看看有没有 {eval updatesession();} 和 {eval output();}
/ Q/ C; V9 j$ o4 \1 y+ G7 y
如果没有 {eval updatesession();}
2 d# [/ ?, u; o) r" p6 _) Z2 n
请查找 <!--{if debuginfo()}-->
' R% P! n2 P0 a0 r, [, D9 ]
在上面添加 {eval updatesession();}
7 [3 ?- G7 K1 `# f1 c
如果没有 {eval output();}
2 k8 s) E$ M& I# s) h9 o( a; E4 z
,请在最后添加.<!--{eval output();}-->
3 o! U+ s, q& U7 P. N6 a. B
/ z0 u5 ]8 h: M4 H- C/ _% R' g
3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。
7 a# l, {. V- n4 H
, r, |# T+ K& V8 u
4、防止论坛自动跳转后退出
0 J6 d0 z' V3 K6 I
& {% H3 q1 H# t
在 logging.php 中作如下修改:
8 A8 y# e& X# j- m: D$ j i
找到 showmessage('login_succeed', dreferer());
. X/ D3 K; L" X" `. m$ O% w
在它上面添加一行:
4 S6 v9 @% d- n4 Q9 E4 b; p
if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';
% y$ o8 o' E* O9 m, n8 O" `
5、在logging.php中作如下修改:
" t/ p$ `& L1 K. J+ g! h" h
查找 showmessage('login_succeed', dreferer());
' ~% U; @5 W$ j6 ?( n
在它上面加 $sessionupdated=0;
& {+ t0 k. ?# ?0 S
, A% s, [$ V" N2 F$ v2 H3 X
6、程序问题
) e4 q0 K) a1 B
5 p) _4 X0 W% D; `
一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。
1 _6 K+ k3 e, q
这时候,将程序的报错打开即可发现问题。
- w. i0 j$ w8 J4 u0 H
做法一:将 config.inc.php 中的 $errorreport 的值设置为 2
2 u$ T+ [+ J2 i% W& y
做法二:打开 include/common.inc.php 找到 error_reporting(0);
8 S$ h2 w3 Z% ?& z! M, x
修改为 error_reporting(7);
: J, y& X V& T
7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.
: A1 S2 d2 R6 V) l
解决方法:修改目录名为字母或数字格式就行了.
" U; |1 O3 e$ @ r+ U8 b' y) s" b
3 l3 _( q6 w9 x4 X
表现二:部分人登录不了(找个人原因)
' M+ J- X0 W- M8 c- e) m
1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.
. L) w3 @$ R7 a# [/ c0 n
2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;
( ]9 x+ h; E2 R @# O) h* g2 x
3、个人机器没有打开 cookies
! A6 E& {+ {% K+ v# d! p2 N
首先查询自己所使用的IE版本。
, d e6 ~' M- O$ _7 _/ n% {8 k/ I1 J3 l
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标
% w9 K: N# v0 ]! P; D; i: y
! ?$ a; H/ V' _/ X8 k" ~/ z& l
题下第一行,就是有关版本信息。一般是,5.0或6.0。
5 k! x; S- F) P5 D6 v
# Q* E1 t( @# M9 v
A. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:
) j1 Q9 @% r4 ]
u) ?1 R* D( f q
(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"
+ T' W, v" r- z1 V; \- z1 S
0 _" a6 R0 v2 n! m
隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:
2 q1 P7 [* D" @
F' w& v! h) D5 Y
覆盖自动cookie处理 (Override automatic cookie handling)
: z7 y) i R ?6 t, T8 k
8 c& U( X7 \, t2 d
第一方cookie:接受 (First-party cookies: Accept)
" c/ B; X% }% ]9 F
2 F- ]4 I! p" c4 K3 y8 Q0 [+ V
第三方cookie:接受 (Third-party cookies: Accept)
, |1 x) {, i9 e( W1 v$ n5 X _3 |4 Y5 E
3 B% z& ?+ {. S+ A+ w* X a
总是允许会话cookie (Always allow session cookies)
, r; @, l E' b+ h
9 C' F% H. x1 f8 d* u5 @
点击按钮"确定"(OK),关闭cookie设置窗口
3 M& v2 p* g3 Q9 E2 l
' ^) R4 I+ E2 `! y9 C
点击按钮"确定"(OK),关闭Internet 选项设置窗口
: @+ i; O1 ?! X1 R) f
& K r. l9 S5 r2 C' c8 f! f; Y
8 b) _ B* B% ~) D. [
B.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:
7 F' i9 R) g1 x' R8 e% B+ e
1 S( I( f5 Z/ }# z
点击菜单条上的"工具"(Tool)
* S7 G& B+ \# S! `/ T
. }: @ m/ c3 P% }
在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)
5 A" N c8 z5 F/ y) y) e7 l
& I1 B* e0 _% r
在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。
/ z& y: b9 E7 q( ~: ^
! |- o5 w. D' P+ I
在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized)
8 { k! m6 _$ v4 r9 U
( {. \! Z1 ^+ T# e/ F! z
在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:
`2 ]( p, |5 H
. {5 u" X4 v$ {' S
允许使用存储在您计算机上的cookie:启用
# Y$ k9 ]* X& E- c
6 }" \# k. V- m/ e7 }% e& X
允许使用每个对话cookie(未存储):启用
, J+ \7 c4 [& m$ X1 n, n8 S
/ z' K+ {$ N+ B- K% A+ X, A
% G; f0 B ]2 t+ X& l( V( N
点击按钮"确定"(OK),关闭安全设置窗口
! E" M3 j1 k) ~
$ v- U6 l) f M5 F
点击按钮"确定"(OK),关闭Internet 选项设置窗口
X5 A0 l+ y, l2 P
- ?) j' b0 a3 E* h$ x7 K
1 p4 z6 X' a; U" ?% L1 {/ g" z
表现三:后台提示登录成功但是始终跳回登录口
* y% q0 u0 p' U# e; o
1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的
3 L6 }+ v2 B# m+ Y
U0 D. [& Y! ^ H6 h
解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
! m6 c2 \' q8 s7 D P* j* [ B
解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。
) i- {. O9 w; ?# W9 g2 H8 S* {
9 n% p. e2 g/ z* V& @
2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。
% F3 g9 A& ~$ y" Y
解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。
' u- w6 g" Z1 J! |- ^- v1 P
然后到后台的数据库校验,校验后修复一下其他表即可.
& s' _6 D( N# L
嗯,不错
表现一:所有的人都登录不了
5 O# E, a @7 d8 W, D
1、检查 config.inc.php 中 $cookiedomain 的设置,把它改成.加上级域名,
6 w) g X. T/ w; [3 c
比如你用
http://www.zgwxbbs.com
访问,那你就设定成
) N& L4 S2 \" i6 D& ]/ h+ s
.zgwxbbs.com 即可。
/ \4 v. t$ C c# |9 P
8 \8 c' L, Y/ A, n5 [, [# c
2、注意你的 footer 模板,尽量不要随便删除里面的东西(修改版权者切忌)
) h/ u+ I; o, v
有些人因为不小心删除了 {eval updatesession();} 而出问题
$ C' @+ @/ h* O, N
解决方法:
+ M8 [' ~' ]% S! c" Q- d
打开 footer.htm
; R h: a3 W) r
查找 eval
/ C: v& E! q0 [( e
看看有没有 {eval updatesession();} 和 {eval output();}
- J1 E8 Z5 c4 k1 R, K. p/ ~3 f% z" v! d
如果没有 {eval updatesession();}
5 X+ b+ ^! I4 w& H2 {+ V5 c. V' i
请查找 <!--{if debuginfo()}-->
# h1 h5 a% h. E( b
在上面添加 {eval updatesession();}
7 `; V0 |- y& V# b+ N: t3 i
如果没有 {eval output();}
5 X# @' D8 ], f$ H1 o& A
,请在最后添加.
r$ O( v# L+ s1 s7 P, e
; \& E$ H6 o7 E
3、论坛服务器时间和本地时间相差太大了。你把服务器的时间调整一下。
, ~ t1 r* v" \- f' x/ v
, }' X: l$ D( _0 F3 m3 W
4、防止论坛自动跳转后退出
: t: ]' m" A6 X2 A
6 f$ S1 X) _; }, @* |. L# V
在 logging.php 中作如下修改:
8 W/ t" [: K* c, [2 a2 L% R( K
找到 showmessage('login_succeed', dreferer());
: d- k- D% y* Y2 O7 C l' ]0 o
在它上面添加一行:
" Z$ Q3 X$ R' i
if (strstr(strtolower($referer), 'logging.php')) $referer='index.php';
, o! _3 f0 d9 U! D1 \+ ~
5、在logging.php中作如下修改:
$ r; Q" k" \3 N- R+ l% l9 K
查找 showmessage('login_succeed', dreferer());
3 w1 H! f8 Y, @" _; ~
在它上面加 $sessionupdated=0;
, t1 j! ]7 k. P0 Q+ @
- D! s5 d* \9 r# A2 G3 o# d9 @
6、程序问题
* i6 h4 U0 _8 V( P7 \+ m; |
* R* i* Z1 K, _' `
一般情况下是因为,页面上有错误,导致程序由于在设置 cookies 之前有输出使得 cookies 设置不成功。
+ x& h* J: }4 `$ H+ \
这时候,将程序的报错打开即可发现问题。
. }5 N1 i* Y4 J. t4 G
做法一:将 config.inc.php 中的 $errorreport 的值设置为 2
& {% G% k" U$ t: n' h+ G( R4 L
做法二:打开 include/common.inc.php 找到 error_reporting(0);
" |- M' ^# u+ w: }0 O- F6 S4 u4 c
修改为 error_reporting(7);
5 x0 B# ^1 b# [5 d9 T, z+ f
7.论坛目录使用了特殊字符,如 _ 等,访问地址被浏览器转换成 % 加 16 进制编码的格式了,这时不能正常登录.
( t4 L0 M2 O) u% w1 b
解决方法:修改目录名为字母或数字格式就行了.
, s9 B8 s1 I3 z2 y5 x# n
3 ]/ J+ G8 }5 ?
表现二:部分人登录不了(找个人原因)
3 L. A1 }) M4 X' B% s$ t
1、有可能同一域名下的 Cookies 相互影响所致.如果您使用 IE 浏览器,可在 Internet 选项中的 常规 页面点击删除 Cookies.登录问题即可解决.
5 X" e: ^4 j( l6 E ~
2、cookies 已经写满,这种情况下,只要清除 cookies 就可登陆;
9 w1 L6 r/ C" L; D% W4 X
3、个人机器没有打开 cookies
7 N! g. A" `- b0 y
首先查询自己所使用的IE版本。
; }# d- C. N1 B+ Z4 X) V' d n7 |' E2 G
打开IE,点击菜单条上的"帮助"(Help) ,在展开的菜单里,选择最下面一条"关于Internet Explorer"(About Internet Explorer) ,在弹出的窗口中,Internet Explorer图片标
" h k Q2 S. Y/ | o9 S# |
5 T& P. w; m: k8 O+ N0 s# i
题下第一行,就是有关版本信息。一般是,5.0或6.0。
8 P9 i, [9 _: d$ @
7 D. D f# V9 ]" @5 O
A. 如果您使用的是IE 6.0版本,请按以下几个步骤启用cookie:
3 H6 n$ _0 Y1 q4 |) W
1 r; I$ t; x5 B
(1)点击菜单条上的"工具"(Tool) 在展开的菜单里,选择最下面一条"Internet选项"(Internet Options) 在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第三个"
/ J7 C/ N! \- R
0 [* l6 d- v l: S6 E3 a. Q* U; s
隐私"(Privacy)。在"隐私"的设置里,中间偏下有三个按钮,点击第二个按钮"高级"(Advanced) 在弹出的cookie设置窗口里,勾选如下设置:
* l4 v: a& J f! [
O$ P& W/ b3 G/ k8 l/ {0 h! j5 {
覆盖自动cookie处理 (Override automatic cookie handling)
% J' ~2 j; t- v: r- A
1 m9 j: r, f- G( L" N
第一方cookie:接受 (First-party cookies: Accept)
/ B* v; H, V' `! `* |; q8 {
- `) c1 R, a' v; Z8 I
第三方cookie:接受 (Third-party cookies: Accept)
1 r1 @3 Z0 X' z( i9 R
/ t5 [0 R5 K, l8 k2 L- G
总是允许会话cookie (Always allow session cookies)
* A. H& S0 \) U! L# P
! k& _' @" L& v+ ~
点击按钮"确定"(OK),关闭cookie设置窗口
# a: e8 Z7 @ K4 T$ ^
) D5 S$ S. R) L' W o/ _
点击按钮"确定"(OK),关闭Internet 选项设置窗口
, i% e% P+ i4 S6 ^- a2 Y
, B& B$ q; X0 p9 ?$ H
: i+ j- W- v; T$ D7 c1 U
B.如果您使用的是IE 5.0版本,请按以下几个步骤启用cookie:
4 v' E9 t, u, B' `
8 `8 K6 c, _- ]! J
点击菜单条上的"工具"(Tool)
0 B9 U9 {$ x6 D( ~2 I9 |
, s; E7 n- o' {: Y6 |9 L9 m- ]+ m
在展开的菜单里,选择最下面一条"Internet选项"(Internet Options)
# f( V- [! ?0 T+ Z, l. \
) f! c4 a0 M. E* g" r* l/ q
在打开的Internet 选项设置窗口里,顶上有一条标签栏,点击第二个"安全"(Security)。
3 q m5 \0 ^ y/ H5 t
& B4 x) J5 u6 X$ W
在"安全"的设置里,中间偏下有两个按钮,点击按钮"自定义级别"(Customized)
; Y$ a {. g1 m& g
2 ]! w6 `; d( k$ z8 U
在弹出的安全设置窗口里,拉动上下滚动条,找到cookie设置,勾选如下设置:
' ^, H( F/ ]& ^+ {8 f! n
- E% K1 P% `+ U! D" h+ R
允许使用存储在您计算机上的cookie:启用
6 Q5 t: @: y" N# @ @
, \ S) Q! ^& _ R* X) {; E `
允许使用每个对话cookie(未存储):启用
5 v& u: D- v) u$ ]* _. b7 B( K
5 b6 q: f" S* Y
1 d1 C5 u8 r5 y4 _
点击按钮"确定"(OK),关闭安全设置窗口
1 r- x1 P0 b- ]+ L. k
Z: ^0 F$ [; h
点击按钮"确定"(OK),关闭Internet 选项设置窗口
& ~4 F6 ~8 T+ P i4 c
# i. P0 G$ Y5 @
" z5 E+ r9 m+ Y8 ^- ^7 M
表现三:后台提示登录成功但是始终跳回登录口
3 \* {$ ~, Q6 w" s
1、管理员使用的网络 IP 不停地更换,后台 IP 校验通过不了造成的
7 f* J l& k: X; |& y
; m; C8 m4 K; G+ }+ e
解决方法一:用文本编辑器(如记事本)打开 config.inc.php , 将 $admincp['checkip'] 设置为 0
8 E9 K/ I& w1 _, ?: P
解决方法二:使用一固定 IP 的代理来访问论坛和论坛的后台。
7 ~* A; D" O8 U4 h
% w4 S3 K8 F' Y1 T* c- {! n8 A
2、数据库由于迁移或者是等等原因,造成数据库的字段变短,后台登录不了。
' t: b! f& ]" [, _ r
解决方法:使用 phpmyadmin 或其它数据库管理工具查看 cdb_adminsessions 表的 ip 字段长度变成了 7 改成 15 就可以去登录了。
/ Q- D0 [ G$ X; \7 ?
然后到后台的数据库校验,校验后修复一下其他表即可.
8 n4 E( T$ y/ H0 o; g
4 g# l- z# M2 J
作者:
北美生活网
时间:
2017-4-2 14:22
; t" j! M. F* U# H
discuz设置允许版主生成文章/发布文章的方法
8 N/ D% h9 y( h# K: c
1 V5 J) v- S7 O7 u" j5 v
管理员进入后台,用户,管理组,版主,基本设置,门户相关,发布文章-是
: U7 I1 q; b: U) F! A
以上设置后,在帖子上方的管理项中,会出现“
生成文章
”,但生成不一定会成功,还需要配置以下权限。
! c8 z. t( {/ {; `3 u6 @6 O# y; r
' T& f! N1 O: Q
管理员进入后台,用户,管理组,版主,管理权限,其他权限,允许生成HTML文件-是
. p- w5 M& C. Y9 x/ [. c3 x8 ^
设置完,更新缓存。
. v' j6 y. r! l
这样就可以直接发布静态文章,同时也能把动态帖子生成静态html文件了。
* ? v( J3 V9 D: h, Q, L5 N3 I
9 @) B/ P ~7 N" O, L, w
1 @/ N. y# o' L0 x
如果不想自动转化为HTML, 第二步就不用设置。
( E9 i7 h8 e5 ?0 f8 {) r
2 b6 }. `- ]: t2 X0 @
) t% a4 n: `, }5 a3 P: _
问题点:门户html页不显示登录状态(已经登录的显示退出,其实没有)
欢迎光临 北美网备份站 (http://beimeilife.duckdns.org/)
Powered by Discuz! X3.2