gpt4 book ai didi

.net - IIS 7(和 MVC)中的表单例份验证 : Why ReturnUrl=/is added?

转载 作者:行者123 更新时间:2023-12-02 22:46:03 25 4
gpt4 key购买 nike

尝试访问我的网站时:

www.X.com

浏览器将 URL 更改为:

www.X.com/

问题是结果网址是:

www.X.com/HomePage.aspx?ReturnUrl=/

(HomePage.aspx 是默认页面)

在 IE 上:www.X.com/HomePage.aspx?ReturnUrl=%2f

由于某种原因,表单例份验证将/视为用户尝试访问的页面,然后重定向到:HomePage.aspx?ReturnUrl=/

如何设置表单例份验证(或 MVC 路由)不将/视为页面,以便在访问 www.X.com 时不会更改 url?

该网站在 Windows Server 2008 IIS7、.NET 4 上运行。

(在IIS6上运行时没有这个问题)

Web.config:

<authentication mode="Forms">
<forms name=".AUTHCOOKIE" loginUrl="HomePage.aspx" defaultUrl="Loading.aspx" timeout="9480" />
</authentication>

MVC 路由(不确定是否相关):

public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");
routes.IgnoreRoute("{resource}.ascx/{*pathInfo}");
routes.IgnoreRoute("{resource}.ashx/{*pathInfo}");
routes.IgnoreRoute("{resource}.gif/{*pathInfo}");

routes.MapRoute("Actions", "A/{controller}/{action}", new { controller = "Tasks", action = "InitPage" });

}

谢谢

拉斐尔

最佳答案

第一步:您可以按如下方式设置Web配置文件:

<authentication mode="Forms">
<forms name=".AUTHCOOKIE" loginUrl="/" defaultUrl="Loading.aspx" timeout="9480" />
</authentication>

第 2 步:将您的网络服务器(IIS)的默认文档设置为“Loading.aspx”

关于.net - IIS 7(和 MVC)中的表单例份验证 : Why ReturnUrl=/is added?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3100865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com