Я провел полтора дня, пытаясь решить эту проблему. В основном есть сайт ASP.net с проверкой подлинности с помощью форм на IIS7 с использованием Framework 4.0.
Кажется, что авторизация работает идеально для каждого сценария, за исключением удара по нему без указания документа (Должен разрешиться в Документ по умолчанию).
Например (Пожалуйста, не будьте грубыми на сайте, он все еще разрабатывается;)),
http://www.rewardroster.com/Default.aspx работает отлично, на этой странице должен быть разрешен любой доступ, как указано в web.config.
но если я нажму www.rewardroster.com напрямую, он перенаправит на страницу входа с URL-адресом возврата, установленным на "/", или Login.aspx? ReturnUrl =% 2f
Некоторые вещи, которые я пробовал:
1) Установите для параметра «Аутентификация» значение «Нет», а затем документ по умолчанию сработает, так что это не проблема.
2) Добавлен атрибут DefaultDocument в Web.config
3) Удалены все записи в списке документов по умолчанию в IIS, кроме Default.aspx
4) Добавлена запись MachineKey в Config
5) Переключение с интегрированного на классический конвейер в IIS
Вот что в моей конфигурации:
<authentication mode="Forms">
<forms name="appNameAuth" loginUrl="Login.aspx" protection="All" timeout="60" slidingExpiration="true" defaultUrl="Default.aspx" path="/">
</forms>
</authentication>
</authentication>
<location path="Default.aspx">
Большое спасибо за ваше время и надеюсь, что кто-то знает, что здесь происходит.