【问题标题】:Getting forbidden (403.14) when not going to /index but just /不去 /index 而只是 / 时被禁止(403.14)
【发布时间】:2016-03-09 06:15:09
【问题描述】:

使用 ASP.NET MVC,我有如下代码和标准路由定义。当我导航到 mysite.com/ExtjsRun 时,我收到 403.14 错误,但是当我转到 mysite.com/ExtjsRun/index 时,我执行了控制器。

我的问题是如何让路由 /ExtjsRun 默认为我的索引方法。

    using System.Web.Mvc;
    using WebApp.Models;

    namespace WebApp.Controllers
    {
        public class ExtJsRunController : Controller
        {

            [MultiTenantControllerAllow("svcc,angu")]
            public ActionResult Index()
            {
                var str = "/ExtjsRun/" + Tenant.Name;
                return Redirect(str);
            }

        }

    }

路由:

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

        routes.MapRoute(
            namespaces: new[] {"WebApp.Controllers"},
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home",
                action = "Index",
                id = UrlParameter.Optional }
        );

【问题讨论】:

  • URL 格式为controller/action,您尝试访问mysite.com/ExtJsRun,这是不正确的。如果要默认重定向到mysite.com/ExtJsRun/Index,请将上面RouteConfig中的默认控制器更改为ExtJsRun
  • 我不希望控制器成为 extjsrun。我只是不想在网址末尾键入 /index 。我希望 mysite.com/extjsrun 工作

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


【解决方案1】:

如下更改路由代码

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

        routes.MapRoute(
            namespaces: new[] {"WebApp.Controllers"},
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "ExtJsRun",
                action = "Index",
                id = UrlParameter.Optional }
        );

您没有将默认控制器设置为ExtJsRun,并将操作设置为Index。通过您的代码,iis 服务器在该控制器中搜索 Home 控制器和 Index 操作,这就是您拒绝访问的原因
希望这会有所帮助

【讨论】:

    猜你喜欢
    • 2019-10-30
    • 2015-04-18
    • 2013-04-24
    • 2014-07-29
    • 1970-01-01
    • 1970-01-01
    • 2012-07-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多