目录上的"401 Unauthorized"

Ste*_*ven 80 asp.net iis asp.net-mvc iis-7

我认为这是一个IIS错误,因为如果我在本地计算机上运行该项目,则不会发生这种情况.

我有我的样式表 ~/Content/css

该目录中的任何文件都不会在页面上加载,当我直接导航到它们时,我收到服务器错误:

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

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

这只发生在该目录中,我没有问题访问任何其他文件.我在IIS7中需要做些什么来阻止它吗?

jas*_*koh 274

  1. 打开IIS并选择导致401的站点
  2. 在IIS标头中选择身份验证属性
  3. 选择匿名身份验证
  4. 右键单击它,选择" 编辑"并选择" 应用程序池标识"
  5. 重新启动网站,它应该工作

  • 它有效,但为什么?你能解释一下吗? (13认同)
  • 这是有效的,但令人困惑的是,它曾经工作了大约两年,然后今天没有任何已知的原因它停止工作...你的解决方案确实解决了它. (6认同)
  • 这似乎有效,因为默认情况下,匿名身份验证的"特定用户"是IUSR,如接受的答案中所述.但是,应用程序池*上设置的标识必须*具有整个网站的权限,否则该网站将无法加载.因此,虽然我的IUSR帐户没有访问权限(实际上似乎不存在),但应用程序池正在使用的帐户具有访问权限. (2认同)

m.e*_*son 44

您可能没有该文件夹的IUSR_ computername权限.我刚刚进行了快速扫描,看起来你会在这里找到你需要的信息.

如果不是这样,您是否通过浏览器提示您输入用户名和密码?如果是这样,可能是IIS配置为仅使用集成身份验证,如此处所述.

  • 如果您使用应用程序池来管理数据库/文件系统访问,请不要这样做.请继续阅读下面的imanabidi的答案. (4认同)
  • http://support.microsoft.com/kb/313075-该页面不再存在。@ m.edmondson (2认同)

小智 7

  • 打开IIS
  • 选择您遇到问题的站点

  • 选择下面

在此处输入图片说明

-右键单击“匿名身​​份验证”,然后单击“编辑”,然后按照以下说明进行操作

在此处输入图片说明


Ken*_*lar 5

您没有权限使用您提供的凭据查看此目录或页面.

尽管用户已经通过Active Directory进行了身份验证,但仍然发生了这种情况.

访问拒绝错误的原因可能有很多,但如果您认为已经从Web应用程序中正确配置了所有内容,则可能会遗漏一些细节.确保您向Authenticated Users授予访问Web应用程序目录的适当权限.

以下是我为解决此问题而采取的步骤.

  1. 右键单击存储Web应用程序的目录,然后选择"属性"并单击"安全"选项卡.

  2. 单击单击编辑...,然后单击添加...按钮.在"输入要选择的对象名称"中键入Authenticated Users,然后单击"添加"按钮.在"输入要选择的对象名称"中键入Authenticated Users.

  3. 单击" 确定",您应该将Authenticated Users视为用户名之一.如果尚未选中,则对较低端的"经过身份验证的用户的权限"框提供适当的权限.

  4. 单击" 确定"两次以关闭对话框.它应该立即生效,但如果您想确定,可以重新启动Web应用程序的IIS.

刷新浏览器,它现在应该显示网页.

希望这可以帮助!