繁体   English   中英

经典的asp response.redirect到适当的页面

[英]classic asp response.redirect to appropriate page

我创建了一个.html维护文件,并且希望有人访问该网站时将其重定向到维护文件夹/index.html。

我的代码:(位于根目录下的default.asp)

<%
   If InStr( UCase(Request.ServerVariables("SERVER_NAME")),  UCase("abc.com") ) > 0   Then 
       Response.Redirect("/maintenance/")      
   ElseIf InStr( UCase(Request.ServerVariables("SERVER_NAME")),  UCase("web.com") ) > 0 Then 
       Response.Redirect("/web/") 
   End If

 %>

它可以正常工作,如果我转到abc.com,但是如果我输入abc.com/blog,则转到博客页面。 我该如何防止它不会进入任何子文件夹。

也许使用Request.ServerVariables["HTTP_HOST"]可以解决您的问题。

您是否尝试过使用带有Response.Write的变量Request.ServerVariables("SERVER_NAME")来查看为什么对字符串的检查失败?

您是在使用这种“测试>做”方法,而不是只是因为关闭网站并创建自定义的404.html页面,原因是:(1)您的网站通过各种域名接收呼叫,并且您希望某些域名可以工作,而其他域名则无法工作; 或(2)您只是没想到要使用404方法?

无论如何,如果您想通过代码来执行此操作,请将其放在页面的最顶部(非常重要的标题之前),或者甚至将此AS用作index.asp或default.asp页面:

<%
s_url = Request.ServerVariables("server_name")
s_url = lcase(s_url)
b_found = InStr(1,s_url, "abc.com",1)
if (b_found <> 0) then
    response.redirect("/maintenance/")
end if
%>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM