风讯官方论坛

首页 » FoosunCMS交流区 » Foosun4.x安装使用 » 4.0后台过期的临时解决办法
酷疯子 - 2008-10-3 11:58:00
过期是指,登陆后台后什么都没有做就 蹦出提示 登陆超时什么重新登陆之类的提示

问题产生原因:
      一般这种情况出现在虚拟主机上,因为虚拟主机要容纳更多的客户所以把有些东西限制了,譬如你的CPU占用多少 当你超过了就结束进程,另外一种是定时结束所有进程。

修改办法:
        如果将原本存储在服务器上的东西转存到本地我想应该是可以解决的,我这边有个临时方案不知道哪位大侠愿意测试一下 呵呵。


代码修改:const.asp增加以下代码

'登陆验证是否改为Cookies,1为启用Cookie,0为不启用。
Const Logincookie = "1"


修改:CheckLogin.asp  77行至84行修改为以下代码
如果行数不对照那么大致找到以下语句在它下边进行覆盖
if cint(p_RsLoginObj("Admin_Is_Locked")) = 1 then
  Response.Write("<script>alert(""错误:\n您已经被锁定,请与管理联系\n"");window.close();</script>")
  Response.End
end if
这里是要修改的代码片段
If Cint(p_RsLoginObj("Admin_Is_Super")) <> 1 Then
  Dim p_FSO,tmps_path,Temps_AdminPath
结束

If Logincookie = "1" Then
    Response.Cookies("Admin_Name") = p_RsLoginObj("Admin_Name")
    Response.Cookies("Admin_Pass_Word") = p_RsLoginObj("Admin_Pass_Word")
    Response.Cookies("Admin_Parent_Admin") = p_RsLoginObj("Admin_Parent_Admin")
    Response.Cookies("Admin_Is_Super") = p_RsLoginObj("Admin_Is_Super")
    If isnull(p_RsLoginObj("Admin_Pop_List")) Or p_RsLoginObj("Admin_Pop_List") = "" Then
        Response.Cookies("Admin_Pop_List") = ""
    Else
        Response.Cookies("Admin_Pop_List") = p_RsLoginObj("Admin_Pop_List")

    End if
    Response.Cookies("Admin_Add_Admin") = p_RsLoginObj("Admin_Add_Admin")
    Response.Cookies("Admin_Style_Num") = p_RsLoginObj("Admin_Style_Num")
    Response.Cookies("Admin_FilesTF") = p_RsLoginObj("Admin_FilesTF")
Else
    Session("Admin_Name") = p_RsLoginObj("Admin_Name")
    Session("Admin_Pass_Word") = p_RsLoginObj("Admin_Pass_Word")
    Session("Admin_Parent_Admin") = p_RsLoginObj("Admin_Parent_Admin")
    Session("Admin_Is_Super") = p_RsLoginObj("Admin_Is_Super")
    Session("Admin_Pop_List") = p_RsLoginObj("Admin_Pop_List")
    Session("Admin_Add_Admin") = p_RsLoginObj("Admin_Add_Admin")
    Session("Admin_Style_Num") = p_RsLoginObj("Admin_Style_Num")
    Session("Admin_FilesTF") = p_RsLoginObj("Admin_FilesTF")
End if


MF_Function.asp  MF_Session_TF()函数开始部分加上以下代码

If Logincookie = "1" Then
Session("Admin_Name") = Request.Cookies("Admin_Name")
Session("Admin_Pass_Word") = Request.Cookies("Admin_Pass_Word")
Session("Admin_Parent_Admin") = Request.Cookies("Admin_Parent_Admin")
Session("Admin_Is_Super") = Request.Cookies("Admin_Is_Super")
Session("Admin_Pop_List") = Request.Cookies("Admin_Pop_List")
Session("Admin_Add_Admin") = Request.Cookies("Admin_Add_Admin")
Session("Admin_Style_Num") = Request.Cookies("Admin_Style_Num")
Session("Admin_FilesTF") = Request.Cookies("Admin_FilesTF")
End if


这种修改算是最笨的一种了 前边的生成Cookies我想大家还是容易理解的,至于后边为什么要多余到把Cookies重新写进session里,是因为程序有很多地方都用到了登陆时候所产生的session所以 我就多此一举从新把客户端的东西写到服务器端去,以后或许我会出一个补丁把所有的东西都放到客户端去做。
酷疯子 - 2008-10-3 12:04:00
退出我没有清空cookies  呵呵  要关闭浏览器才能 完全退出
jxspace - 2008-10-3 19:02:00
不错,支持一下。
prrx - 2008-10-4 00:24:00
思路很好,可是楼主的方法门到底如何修改呢,可以细致的讲一下修改哪一个部分
prrx - 2008-10-4 00:26:00
比如这两个文件,楼主可以麻烦帮助修改一下么!:default6: 谢谢

我测试一下效果!

附件: ceshi.rar
酷疯子 - 2008-10-4 02:02:00
已经将文件修改方法给你了,注意 仅仅是针对你的文件哈 要是版本不一样最好别按行数进行覆盖~:default6:
ezzz - 2008-10-4 06:41:00
不错,虽然还不是最终定稿的修改,还是要支持楼主的无私精神.
顶一下哈.
pc515 - 2008-10-9 17:37:00
还没有试,但首先支持一下楼主.
pc515 - 2008-10-9 19:59:00
我按楼主的方法做了,我在发布新闻时出现"Err$0$系统发生严重错误,请与官方联系",但在新闻管理里面也有所发布新闻.是什么原因,请楼主赐教.
pc515 - 2008-10-10 10:52:00
请楼主测试一下新闻以布,看看有没有出错信息.
binge - 2008-10-10 11:26:00
是很不错
pc515 - 2008-10-10 13:47:00
现在过期提示并不是"登陆后台后什么都没有做就 蹦出提示 登陆超",而是突然点某个选项就出现"登陆过期,请重新登陆"的提示.
jxspace - 2008-10-11 12:10:00
如下解决方法:http://bbs.foosun.net/showtopic-61450.aspx
1
查看完整版本: 4.0后台过期的临时解决办法