日期:2014-05-17  浏览次数:20901 次

Server.Transfer()函数的奇怪出错,请高手指点~~,谢谢
Server.Transfer()函数的奇怪出错,请高手指点~~,谢谢
在同一个页面里的入下代码:
(webwebweb表示未带后缀的域名)

sub_domain   =   LCase   (Request.ServerVariables( "SERVER_NAME "))

'以下这个Server.Transfer函数出错,500错误
if   sub_domain= "www.webwebweb.net "   then      
          Server.Transfer( "/HR/index.asp ")
end   if
下面这个方法是正常的
if   sub_domain= "www.webwebweb.net "   then
        strUrl= "/HR/index.asp "
        Response.Redirect(strUrl)
end   if

sub_domain   =   left(sub_domain,InStr(sub_domain, ". ")-1)

'但是以下这个Server.Transfer函数却是正常的,都在同一个页面
if   sub_domain= "webwebweb "   or   sub_domain= "www "   then
        Server.Transfer( "/index.asp ")
end   if

为什么Server.Transfer函数会出现这种错误呢?请高手指点!


还有如下情况:
从根目录下的HR/Company/目录下的ChangePwdPost.asp这个文件里调用
Server.Execute( "/MF_Member/ChangePwdPost.asp ")
以修改另一个库的密码,在我的电脑上是正常的,没有出错
从根目录下的MF_Member目录下的ChangePwdPost.asp这个文件里调用
Server.Execute( "/hr/company/changepwdpost.asp ")
  以修改另一个库的密码,在我的电脑上是正常的,没有出错

但是传到服务器上确是:
从根目录下的HR/Company/目录下的ChangePwdPost.asp这个文件里调用
Server.Execute( "/MF_Member/ChangePwdPost.asp ")
这个是正常的,没有出错
但是
从根目录下的MF_Member目录下的ChangePwdPost.asp这个文件里调用
Server.Execute( "/hr/company/changepwdpost.asp ")
这个出错了,也是500出错~~~


请高手指点啊~~~




------解决方案--------------------
要注意,Transfer,会导致其调用的程序里用到的相对路径与原来的代表的位置不同。比如调用数据库,就会出错。