我现在调试的asp网站有这么段程序,当当用户登陆成功后
  application("log_sus") = "登陆成功!"
  application("admin") = id
  application("admin_num") = 1
  session("log_authenticated") = true
  response.redirect("site_admin.asp")
这几个值回被附值为上面的内容,然后可以进入管理页面(添加,删除,更新3个页面)
每个页面有这样一段判断程序来判断用户是否成功登陆
<%
  if application("log_sus") = "登陆成功!" and application("admin_num") = 1 and application("admin") <> "" and session("log_authenticated") = true then
%>
如果未登陆成功,则返回登陆页面.
奇怪的问题是,我这个网站在winxp iis环境下,一切运行正常
但是当拿到机房服务器的时候(windows 2003 server + iis),虽然登陆成功,但点击进入添加,删除,更新3个页面的时候居然都返回登陆页面,我用resonpse.write方法输出application("log_sus"),application("admin"),application("admin_num"),session("log_authenticated")的值一看,居然他们没有被附值为登陆成功的值,还是原先的0,"","false",他们再这过程中的值难道不能保留,或是又被改写了吗?可是我在我的xp系统上,一点问题都没有啊.难道是机房服务器的系统有问题吗?
希望大家帮忙!

解决方案 »

  1.   

    看看机房服务器上是否安装有杀毒软件,如果有,把web代码目录排除在扫描范围之外以防止杀毒软件对web.config及bin目录下文件的扫描而导致应用程序重启。
      

  2.   

    <%
      if application("log_sus") = "登陆成功!" and application("admin_num") = 1 and application("admin") <> "" and session("log_authenticated") = true then
    %>
    我觉得这里都用session比较好,APPLICATION是全局性的。
      

  3.   

    你们所有的Application换成Session问题就会被解决!
      

  4.   

    这种判断用Application确实有问题。
      

  5.   

    用session试一下,我的也是server 2003没有问题。随便问一下你的2003是不是正版,我的盗版没法update,自己用,服务器上不敢装
      

  6.   

    我换成了session,在xp系统机器上反而出问题了-_-,
    2003好像是D版,因没一直没升级