Redirect HTTP状态410使用经典ASP的整个域
两个域指向我的IIS 7.5服务器。一个域服务于一个站点,另一个域我想为引用该域的任何URL返回410 Gone状态。由于我没有为410域添加DNS条目,服务器将返回IIS默认站点。我将以下内容添加到默认站点上的default.asp文件中:Redirect HTTP状态410使用经典ASP的整个域,redirect,asp-classic,wildcard,status,Redirect,Asp Classic,Wildcard,Status,两个域指向我的IIS 7.5服务器。一个域服务于一个站点,另一个域我想为引用该域的任何URL返回410 Gone状态。由于我没有为410域添加DNS条目,服务器将返回IIS默认站点。我将以下内容添加到默认站点上的default.asp文件中: <% if instr(lcase(Request.ServerVariables("SERVER_NAME")),"legacy.somedomain.com") then response.Status="410 Gone" re
<%
if instr(lcase(Request.ServerVariables("SERVER_NAME")),"legacy.somedomain.com") then
response.Status="410 Gone"
response.Write(response.Status)
response.End
end if
%>
如果有人访问该域的子页面URL,则此功能正常工作,但如果有人访问则会失败。我以为上面的脚本会对请求进行通配符。是否可以修改它以捕获域和所有子页事件
目前,如果用户访问legacy.somedomain.com/somepage/将显示system 404页面。使用以下代码在web目录中创建一个Global.asa文件
<script language="vbscript" runat="server">
sub Session_OnStart
Session("started")=now()
end sub
sub Session_OnStart
if instr(lcase(Request.ServerVariables("SERVER_NAME")),"legacy.somedomain.com") then
response.Status="410 Gone"
response.Write(response.Status)
response.End
end if
end sub
</script>
但是,实际上,您最好执行永久重定向,而不是“消失”。使用该代码设置一个自定义404页面。实际上我已经这样做了,子页面现在返回410状态。然而,我希望我不必为IIS默认站点和服务器范围为404页的410这样做。我考虑的另一个选择是为这个域创建DNS条目和托管空间。。。设置自定义404页面并实现相同的编程。因此,默认站点不受影响。另一个选项是在站点的Global.asa文件中执行410。我将使用URL重写。比自定义404页面更干净