2013-02-23 91 views
5

我不得不處理一個遺留的asp.net mvc應用程序,它不像我習慣的那樣配置。通過普通註銷後:與asp.net mvc ReturnUrl問題

FormsAuthentication.SignOut(); 

return RedirectToAction("Index", "Home"); 

URI包含:

ReturnUrl=%2f 

這通常不是這種情況。我怎樣才能抑制這一點?

或者,當我嘗試訪問需要認證/授權的頁面時,會出現登錄頁面,但不會生成適當的ReturnUrl =(即URI保持原樣)。

這是一個IIS問題,我讀過的地方,或者沒有正確配置的asp.net FormsAuthenticationModule?謝謝。

+0

可能相關嗎? http://stackoverflow.com/questions/8205368/request-redirect-to-account-loginreturnurl-2f-since-mvc-3-install-on-server – Allov 2013-02-23 05:29:30

+0

發佈之前發佈...不要這麼認爲。 – cs0815 2013-02-23 05:31:34

+0

您使用的是什麼版本的MVC? – Alex 2013-02-27 03:51:22

回答

1

RETURNURL。有人似乎將根URL(/)重定向到自身或Home/Index。 %2f是「/」的編碼形式。

我會檢查web.config的授權部分,看看是否有錯誤。

0

這取決於你的路由,對吧?如果您有這方面是你最後的路由配置:在未經授權的重定向過程中添加

routes.MapRoute(
"Default", 
"{controller}/{action}/{id}", 
new { controller = "Home", action = "Index", id = UrlParameter.Optional }); 
0

如果沒有問題,則在您的Web.Config文件的system.web屬性中添加身份驗證模式=「Windows」。希望它能爲你工作。