繁体   English   中英

ASP.NET MVC将具有表单身份验证的应用程序部署到IIS 7.5

[英]ASP.NET MVC Deploying an app with forms authentication to IIS 7.5

我很难将具有表单身份验证的Web应用程序部署到IIS 7.5。

我有以下内容:

  • 表格认证
  • ASP.NET MVC 2
  • Net Framework 4.0
  • 应用程序池是为.Net Framework 4.0设置的,处于集成管道模式。
  • Windows Server 2008上的IIS 7.5
  • 身份验证设置为IIS(ASP.NET模拟和表单身份验证设置为ENABLED,其余设置为DISABLED)。 在表单身份验证设置中,登录URL是正确的。 cookie设置为(模式:使用设备配置文件,名称:.ASPXAUTH,保护模式:加密和验证,需要SSL:未选中)

Web.Config:

<authentication mode="Forms">
  <forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>

在IIS管理器中运行“管理应用程序->浏览”时,出现以下错误。


HTTP错误401.2-未经授权

由于身份验证标题无效,因此您无权查看此页面。

尝试在本地计算机上运行已部署的应用程序时出现以下错误:


401-未经授权:由于凭据无效,访问被拒绝。

您无权使用您提供的凭据查看此目录或页面。

对出什么问题有任何想法吗? 从VS运行时可以找到它。

如果您有通往最终[Authorize]属性的路径,则将导致此情况-删除RenderAction或允许该动作在没有[Authorize]的情况下进行修复。

就我而言,我在_Layout.cshtml中调用Html.RenderAction(“ H​​eading”)(提供“请登录”或“欢迎回来,瑞安”)。 我的标题actionresult结果上设置了AuthorizeAttribute。 我在标题上删除了AuthorizeAttribute,并已解决。

我正在运行与您显示的设置相同的设置,并且对我有用。 检查以确保您的登录操作不需要授权。

我通过将“匿名身份验证”设置为启用来使其工作。

更新:将其设置为“匿名认证”会导致其他问题。 我需要保持禁用状态。

有任何想法吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM