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,会导致其调用的程序里用到的相对路径与原来的代表的位置不同。比如调用数据库,就会出错。