【问题标题】:One of the controllers return 403 after publishing其中一个控制器在发布后返回 403
【发布时间】:2015-06-07 06:14:18
【问题描述】:

我刚刚在线发布了我的 ASP.Net MVC 应用程序.. 但是所有的动作和控制器对注册用户都很好。

其中只有一个返回 403 .. ?

本地一切正常。

任何调试建议都会非常有帮助.. 任何想法也是如此

我知道它与路由引擎有关.. 作为直接网址:/UserPortal/Portal/Portal 效果很好 = 区域,= 控制器,= 动作

但是当我使用:/UserPortal/ 它返回 403 ..

我的UserPortalAreaRegistration.cs 中有以下内容

public override void RegisterArea(AreaRegistrationContext context) 
        {
            context.MapRoute(
                "UserPortal_default",
                "UserPortal",
                new { controller = "Portal", action = "Portal", id = UrlParameter.Optional }
            );

            context.MapRoute(
                "UserPortal_standard",
                "UserPortal/{controller}/{action}/{id}",
                new { action = "Index", id = UrlParameter.Optional }
            );
        }

【问题讨论】:

  • 能否提供代码示例?
  • 几种可能的解决方案here
  • 是的,我已经知道了.. 并申请了。这就是为什么应用程序的其余部分都在工作的原因.. 只有用户门户的默认路径返回 403.. 那里出了点问题:/

标签: asp.net-mvc http-status-code-403


【解决方案1】:

可能是路由模板问题。您的第一条路线的模板是“UserPortal”,但您的 url 是“UserPortal/”。所以第一条路线不匹配。尝试删除斜线,看看它是否有效。另外我建议您完全删除第一条路线并将默认值添加到第二条路线:

new { controller = "Portal", action = "Index", id = UrlParameter.Optional }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-25
    • 1970-01-01
    • 2022-08-03
    • 2018-10-17
    • 1970-01-01
    • 2018-03-06
    相关资源
    最近更新 更多