我在IIS 7.5中运行ASP.NET MVC3 Web应用程序。
当请求需要身份验证的页面时,应将浏览器重定向到〜/ Account / LogOn?ReturnUrl = ... 而是将浏览器重定向到:帐户/登录?ReturnUrl。
在IIS中,我检查了身份验证设置,但它们似乎是正确的。我重启了服务器一百万次,但没有结果。
有谁知道如何解决这个问题?
答案 0 :(得分:1)
将此值放在web.config中应该可以解决问题
<appSettings>
<add key="loginUrl" value="~/Account/LogOn" />
<add key="autoFormsAuthentication" value="false" />
</appSettings>
答案 1 :(得分:0)
您可以执行以下操作:
添加一个派生自 AuthorizeAttribute 的新类:
namespace CustomAuth
{
public class MyCustomAuth : AuthorizeAttribute
{
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
filterContext.Result = new RedirectResult("~/Account/LogOn");
}
}
}
然后将属性添加到方法或控制器:
[MyCustomAuth]
public class HomeController : Controller
{
public ActionResult Index(int id)
{
return View();
}
}