HTTP错误401.1 - 从本地IIS未经授权

dev*_*all 21 c# iis-7

我已经在我的本地机器上创建了在调试模式下工作正常的网站但是当我把网站放在我机器的本地iis(7.5)上时我得到了

HTTP错误401.1 - 未经授权您无权使用您提供的凭据查看此目录或页面.

身份验证设置我启用了Windows模拟和Windows身份验证,并禁用了该部分中的所有其他内容

所有文件夹都具有完全权限

谁能告诉我发生了什么事?

Kev*_*Kev 28

作为一个快速而又脏的修复程序,将IIS_IUSRS读取/执行修改权限授予您的Web文件夹... 但请勿在互联网面向服务器上进行,请继续阅读....

要正确修复此问题,您应该为您的站点授予应用程序池标识对应用程序的Web文件夹的" 读取/执行"或" 修改"权限.去做这个:

  1. 打开IIS管理器,导航到部署站点的网站或应用程序文件夹.
  2. 打开"高级设置"(位于" 操作"窗格右侧).
  3. 记下应用程序池名称,然后关闭此窗口
  4. 双击" 身份验证"图标以打开身份验证设置
  5. 禁用Windows身份验证
  6. 右键单击匿名身份验证,然后单击Edit
  7. Application pool identity单击单击选择单选按钮OK
  8. 从左侧的IIS管理器树中选择"应用程序池"节点,然后选择在步骤3中记下的应用程序池名称
  9. 右键单击并选择" 高级设置"
  10. 展开"流程模型"设置,然后ApplicationPoolIdentity"内置帐户"下拉列表中选择,然后单击OK.
  11. OK再次单击以保存并关闭"应用程序池高级设置"页面
  12. 打开管理员命令行(右键单击CMD图标并选择"以管理员身份运行".它将位于开始菜单上的某个位置,可能位于"附件"下.
  13. 运行以下命令:

icacls <path_to_site> /grant "IIS APPPOOL\<app_pool_name>"(CI)(OI)(M)

例如:

icacls C:\inetpub\wwwroot\mysite\ /grant "IIS APPPOOL\DEFAULTAPPPOOL":(CI)(OI)(M)

如果一切都好,icacls.exe将报告:

processed file: c:\inetpub\wwwroot\mysite
Successfully processed 1 files; Failed processing 0 files

  • 就像一张纸条,我不得不采取这篇知识库文章http://support.microsoft.com/kb/896861中概述的其他步骤.当您使用自定义标头浏览本地环回地址上的网站时,会出现此问题. (7认同)

cie*_*cia 10

就我而言,这与权限无关。这就是“环回检查”保护。问题是因为我是从具有 IIS 的本地计算机进行连接。

症状包括: 连接后,浏览器提示您插入凭据 3 次,然后出现 HTTP 401.1 错误。

从不同的计算机进行测试效果很好。

有些网站会告诉您禁用“环回检查”,但您必须将要连接的 FQDN 域添加到白名单中,如以下服务器故障响应中所述:

https://serverfault.com/a/485011/415362