Контроллер по умолчанию в моем проекте ASP.NET MVC украшен атрибутом [Авторизовать]. Когда я развертываю сайт на своей машине разработки и получаю доступ к веб-сайту, я перенаправляюсь на страницу входа в систему (определенную в разделе loginUrl forms в Web.Config). Результат: все работает так, как ожидалось.ASP.NET MVC: AuthorizeAttribute по умолчанию страница
Когда я публикую сайт на нашем производственном сервере (Windows Server 2008, IIS 7, DefaultAppPool) и получаю доступ к веб-сайту, ожидаемый адрес отображается в адресной строке (/Account/LogOn?ReturnUrl=*my_expected_return_url*
), но на странице отображается «У вас нет разрешения для просмотра этого каталога или страницы. " вместо страницы входа в систему. Если я удалю атрибут [Авторизовать] на контроллере/действии по умолчанию, страница отобразится правильно.
Мой Web.Config файл:
sessionState mode="InProc" timeout="30"
authentication mode="Forms"
forms loginUrl="~/Account/LogOn" timeout="2880"
Убедитесь, что у вас нет другого web.config в родительской папке сайта. –
У вас есть файл с именем Default.aspx в корневом каталоге? Кроме того, добавьте версию .net framework, asp.net и asp.net mvc, которые вы используете. –