我有一个带有以下控制器的 MVC4 Web 应用程序
[Authorize]
public class AccountController : BaseController
{
[AllowAnonymous]
public ActionResult SignInRegister(LoginModel loginModel, string returnUrl)
{
//some implementation
}
//other secured actions
}
这在本地运行时按预期工作,但是一旦我将它部署到 Free Azure 网站,我就会收到一条401
错误代码,其中包含以下消息:You do not have permission to view this directory or page.
删除[Authorize]
属性并重新部署按预期工作,再次添加它并重新部署会带来问题。
我什至尝试了完全限定的类名:System.Web.Mvc.Authorize
并且System.Web.Mvc.AllowAnonymous
结果相同。
该应用程序使用 .NET 4.5,Azure 网站也配置为使用 4.5。
更新:
有BaseController
一个操作将 Header 作为未装饰的部分视图返回[AllowAnonymous]
。在本地,它导致页面显示时没有标题,但在 Azure 网站上,响应被切断,仅返回上述错误消息。直到我故意查看它之前,我才意识到标题丢失了。
现在需要问一个问题:为什么 Azure 网站会覆盖响应?