IIS 7.5 (Windows 7) - HTTP 错误 401.3 - 未经授权

Nat*_*ley 84 http windows-7 iis-7.5

我正在尝试在本地主机上测试我的 ASP.Net 网站,但出现此错误:

HTTP Error 401.3 - Unauthorized
You do not have permission to view this directory or page because of
the access control list (ACL) configuration or encryption settings for
this resource on the Web server.
Run Code Online (Sandbox Code Playgroud)

我在网站应用程序文件夹中有以下用户,具有完全读/写权限:

  • 网络服务
  • IIS_IUSRS
  • 系统
  • 管理员
  • 内森(我)

我可以尝试解决什么问题?

小智 125

IIS 7 还会创建“IUSR”作为默认用户以通过 IIS 访问文件。因此,使用户 IUSR 具有对文件/文件夹的读取权限。

如何检查IUSR是否具有读取权限?右键单击 -> 文件夹 -> 属性 -> 安全选项卡查看 IUSR 是否在组或用户名列表中,如果没有。

单击编辑 -> 添加 -> 高级 -> 立即查找 -> 选择 IUSR 并单击四次确定

  • 注意:它需要 IUSR 和 IIS_IUSRS 都有权访问它才能在我的机器上工作。我在添加 IUSR 后尝试删除 IIS_IUSRS,认为 IUSR 就是我所需要的,但它发出嘶嘶声。 (8认同)
  • 确保您从正确的位置进行搜索。我正在我的工作域中搜索 IUSR,但一无所获。然后我将位置更改为我的机器名称。 (5认同)
  • 让我惊讶的是,仅仅添加`IIS_IUSRs` 是不够的;我还必须添加`IUSR`。值得记住:o) (2认同)

小智 33

在另一个论坛上找到了这个,所以我不能相信,但我做到了,它对我有用:

“尝试更改 IIS7 中的匿名身份验证设置:

单击“身份验证”,然后选择“匿名身份验证”后单击“编辑”。在打开的窗口中选择应用程序池标识并单击确定。”

  • 这就是为我所做的。 (5认同)

小智 23

我在 Windows Server 2008 上的 IIS 7.5 中遇到了同样的问题。对我来说,以下步骤可以解决这个问题:

  • 打开 IIS 管理器
  • 单击要编辑的网站
  • 双击验证
  • 单击Anonymous Authentication,然后单击Actions下的Edit...
  • 更改为使用应用程序池身份凭据而不是特定用户(我的是 IUSR)

进行此更改后,我的 401.3 错误消失了。


Mat*_*ttB 10

您使用的是登录机制,还是只是匿名身份验证?

如果匿名,请进入 IIS 管理器,在身份验证图标中,选择匿名身份验证名称,然后单击操作中的编辑按钮。检查在那里指定了哪个用户,并确保它对站点文件/文件夹具有权限。

如果您有某种形式的登录系统,请确保您登录的用户具有访问站点文件的权限,并确保您正在运行的应用程序池的 ID 至少具有读取访问权限到文件。