【发布时间】:2015-04-26 16:27:10
【问题描述】:
在 IIS7.5 上部署了 MVC5 站点并在尝试远程访问时收到此错误: 403 - 禁止:访问被拒绝。 从服务器本身,我没有收到错误。 我尝试了常见的建议修复,例如添加
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
到 web.config,并为版本 4.0.30319 运行 aspnet_regiis,但没有任何效果。
几个月前,我部署了另一个 MVC 站点(尽管它是 MVC 版本 3),并且它已启动并运行,没有这种废话。我不记得究竟做了什么来成功部署,但我不记得这样的头痛。只是出于猜测,这不仅仅是由于较新版本的 MVC,我复制并粘贴了工作 MVC3 Web 应用程序的文件夹,通过 IIS 将其转换为应用程序,使用相同的应用程序池,然后...接收远程403错误就可以了。因此,通过提供 403 的精确副本,虽然我复制的应用程序运行良好,但告诉我可能缺少一些 IIS 设置?显然 web.configs 是完全一样的。文件夹权限看起来一样。我在 web 应用程序文件夹中放置了一个测试 html 页面,我可以通过浏览器远程访问它。我不知道,我没有花太多时间在IIS配置地狱里,令人沮丧的难以置信。如果有人有任何想法...
【问题讨论】:
-
是否为 IIS 安装了 ISAPI 模块? iis.net/configreference/system.webserver/isapifilters
-
是的,它们已安装。
-
检查 Web 应用程序根目录的文件系统权限。我认为默认用户组是 IIS_IUSRS
-
还要检查
Anonymous Authentication是否已启用 -
启用匿名认证,IIS_IUSRS 具有读取和执行、列出文件夹内容和读取权限。
标签: asp.net asp.net-mvc-3 asp.net-mvc-5 iis-7.5 http-status-code-403