Я только начинаю изучать веб-программирование с использованием IIS 7.5 в Windows 2008 R2 и ASP.Net 4.
Я заметил, что и IIS, и ASP.Net могут определять правила аутентификации. В IIS есть параметр проверки подлинности с помощью формы, в котором я могу перенаправить пользователя на указанную страницу для проверки подлинности, как показано ниже:
А затем в файле ASP web.config я нахожу похожие настройки:
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
Когда я завершу обе настройки, я предполагаю, что любой запрос страницы будет перенаправлен на страницу login.aspx. Но этого не произошло. Итак, я сбит с толку. Как 2 набора конфигов работают вместе? А почему не перенаправляется запрос страницы?
Спасибо
Обновить
Наконец-то у меня все заработало, и теперь я думаю, что понимаю это. Структура моего сайта выглядит так:
Речь идет об изменении правил авторизации. Запретить всем неавторизованным пользователям root:
<authorization>
<deny users="?" />
</authorization>
Файлы CSS должны быть разрешены для всех пользователей, поэтому у меня есть Styles \ web.config:
<authorization>
<allow users="*" />
</authorization>
и разрешить доступ к register.aspx только неавторизованным пользователям, поэтому у меня есть Account \ web.config:
<location path="Register.aspx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>