0

我创建了一个 .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 它会进入博客页面。我该如何防止它不会进入任何子文件夹。

4

2 回答 2

0

您是否正在使用这种“测试 > 执行”方法,而不是仅仅关闭站点并创建自定义 404.html 页面,因为:(1)您的站点通过各种域名接收呼叫,并且您希望其中一些可以正常工作而不是其他的;或者(2)你只是没有想到使用 404 方法?

无论如何,如果你想通过代码来做,那么把它放在页面的最顶部(在页眉非常重要之前),甚至使用这个作为你的 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
%>
于 2013-05-01T01:31:24.780 回答
0

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

您是否尝试Request.ServerVariables("SERVER_NAME")使用 aResponse.Write来查看变量以了解对字符串的检查失败的原因?

于 2013-04-30T07:25:00.233 回答