ASP.NET MVC 3 Доступ запрещен только на одном сервере и в одной папке - PullRequest
2 голосов
/ 05 января 2012

У меня следующая проблема: при попытке доступа к определенной странице (http://mysite.com/Client/) я получаю сообщение об ошибке «Отказано в доступе» (403 - Запрещено: доступ запрещен), но если я пытаюсь получить доступ к тому же URL-адресу, используя « Индекс "в конце (http://mysite.com/Client/Index), это работает! И у меня есть много других папок, которые работают без" Индекс "в URL.

Самое странное то, что на тестовом сервере (http://mysite.com:8080) я могу получить доступ обоими способами (/ Client / и / Client / Index /). К этому времени я не знаю, является ли это проблемой IIS 7, или в папке клиента по какой-то причине, если он находится в Web.config или я просто схожу с ума!

Маршруты следующие:

    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

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

Еще одна вещь: приложение тестового сервера и приложение основного сервера совпадают!

Может кто-нибудь помочь мне? Спасибо!

P.S .: В web.config нет настроек авторизации.

Ответы [ 2 ]

1 голос
/ 05 января 2012

По вашему вопросу кажется, что у вас нет контроллера клиента, только папка.Итак, я думаю, что маршрут ищет контроллер, который не может найти.Или у вас есть контроллер, но в нем нет действий.В любом случае, я не уверен, попробуйте добавить это в ваши маршруты:

routes.IgnoreRoute("Client/{*path]");

РЕДАКТИРОВАТЬ:

Попробуйте добавить этот маршрут:

routes.MapRoute(
            "Default", // Route name
            "{controller}/Index", // URL with parameters
            new { controller = "Home", action = "Index"} 
        );
0 голосов
/ 06 января 2012

разрешается загадочным образом: хотя я пытался разрешить проблемы, редактируя маршруты, я понял, что ошибка произошла до события application_start.Итак, проблема была в IIS.

Я попытался найти причину проблемы, но не смог, поэтому установил URL Rewrite 2.0 и сделал запрос перенаправления "/ Client" на "/Client/Index".

Странно, не правда ли?Но этот обходной путь решен!

Спасибо за все ответы!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...