asp到aspx创建重定向循环

时间:2014-07-30 09:41:43

标签: c# asp.net redirect asp-classic

我一直试图解决这个问题几天但没有运气...... 两个简单的页面之一是asp.asp

<html>
<head>
<meta http-equiv="expires" content="-1">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate, post-check=0, pre-check=0">
</head>
 <body>
     <%
        response.write("KABOOM!")
        Response.Redirect ("http://boom.com:9800/login/aspx.aspx")

    %>

</body>
</html>

另一个是aspx.aspx:

<%@ Page Language="C#" %>
<%@ import Namespace="System.IO" %>
     <script runat="server">
         private void Page_Load(object sender, System.EventArgs e)
            {
                  Response.Write("Page2 loaded !!!! ");
            }  
       </script>

无法重定向显示:

enter image description here

我无法理解有什么不对。有人可以向我解释为什么它不重定向,它应该重定向吗?可能是我做错了什么(我之前没有使用过asp或asp.net,所以绝对可能......)

由于

1 个答案:

答案 0 :(得分:4)

您可以检查您是否已经在同一页面上 - 如果是,不是重定向,这是一个例子:

if(!HttpContext.Current.Request.Path.EndsWith("aspx.aspx", StringComparison.InvariantCultureIgnoreCase))
       Response.Redirect("aspx.aspx");

现在在经典的asp上,重定向完成为:

    Response.Status="301 Moved Permanently"
    Response.AddHeader "Location","http://example.com/page.aspx"
    Response.End

有一种情况,因为你有登录页面,一个无权点击重定向循环的用户,因为你不允许他自己查看登录页面。登录页面必须对公众开放。

关于你如何做到这一点,请阅读Allow access for unathenticated users to specific page using ASP.Net Forms Authentication