【问题标题】:asp mvc 3 home index page only loads ONCEasp mvc 3 主页索引页面仅加载一次
【发布时间】:2011-05-03 15:26:27
【问题描述】:

我使用非空应用程序附带的默认布局创建了一个 asp mvc 3 项目。一切都很好,等等。直到我把它放在 IIS 中。我有一个非常奇怪的问题。我只能访问一次主页控制器和索引视图 page.com/。当我第一次加载页面时,我看到了它。但是当我单击主页按钮时,它会将我带到帐户登录,并且 URL 被弄乱了,它看起来像 page.com/account/logon=? 和一堆其他信息。 但在其他一些控制器上,它看起来确实不错,例如 page.com/Information/Shop

有人知道首页索引可能是什么问题吗?

Web.config 看起来像这样

routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

【问题讨论】:

  • 主页按钮指向哪个 URL?您是否在任何地方设置了身份验证?

标签: asp.net asp.net-mvc asp.net-mvc-3


【解决方案1】:

您在使用命名管道吗? .Net 4.0?

可能是您的 home 链接指向不同的东西(无论是 www. 还是没有,或者是 localhost/home 而不是 localhost),这会导致路由混乱。

【讨论】:

    【解决方案2】:

    您部署到的 IIS 站点可能将您的站点的 webroot 文件夹设置为需要身份验证。因此,当您尝试访问它要求您登录的页面时。一旦登录,用户信息应保存在 SessionState 中,这样您就不需要在该会话期间再次登录。当然,一旦会话结束(由于超时或某些导航事件),用户信息就会丢失,您需要重新登录。这些设置通常可以在您的 web.config 文件中更改。这是 MSDN 的链接,描述了身份验证部分。

    http://msdn.microsoft.com/en-us/library/532aee0e.aspx

    【讨论】:

    • 但是索引页面从不需要身份验证才能看到它是独立的,没有帐户的用户可以在这些页面上导航...当我运行它时,这在 localchost 中有效,我可以看到索引页面和所有。但是当我把它放入iis时它只工作一次,我看到它,然后我登录,注销,然后我想看到它,它不存在
    猜你喜欢
    • 2013-03-12
    • 2018-12-18
    • 2016-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多