2013-06-04 4 views
0

Я работаю над сайтом ASP.Net 4.5, который имеет два раздела: не аутентифицированный и аутентифицированный. Прошедшие проверку страницы помещаются в папку/secure /.LoginStatus не перенаправляет

У меня есть LoginStatus на главной странице.

<asp:LoginStatus ID="LoginStatus1" runat="server" OnLoggedOut="LoginStatus1_LoggedOut" /> 

Web.config:

<forms name="Recycle_Auth" loginUrl="~/Login.aspx" defaultUrl="~/secure/Dashboard.aspx" timeout="30" /> 

У меня есть проблема, если я на локальный и нажмите "Login", это постбэков, но не перенаправлять Login.aspx. Однако, если я перейду на localhost/home.aspx или на любую другую страницу и нажмите «Войти», он отлично работает.

Я пробовал loginUrl = "Login.aspx" без везения. Elmah также не регистрирует никаких ошибок.

Любые идеи будут оценены.

ответ

0

Мой кулак догадка, пожалуйста, проверьте атрибут пути (в web.config при режиме аутентификации)

и относительно Elmah, Pleae убедитесь, что вы положили его под system.webServer

<system.webServer> 
    <modules> 
     <add name="Elmah.ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" /> 
    </modules> 
... 
+0

Спасибо, но уже определены ... –

+0

ASP.net управления входа в систему будет вызывать FormsAuthentication.GetRed irectUrl, а затем перенаправить пользователя. - Можете ли вы вставить свою конфигурацию аутентификации (Web.Config). - Также, пожалуйста, проверьте анонимный доступ к странице входа – Microtechie

0

Не удалось найти причина, так решена путем добавления перенаправления правила в web.config

  <rule name="Redirect Blank URL" stopProcessing="true"> 
       <match url="^$" /> 
       <action type="Redirect" url="Home" appendQueryString="false" /> 
      </rule> 
Смежные вопросы