MVC4 项目迁移 服务器被配置为不列出此目录的内容
前言:
将服务器中已经发布在IIS7上的网站,迁移到虚拟机中.
方便以后出现问题了,可以在自己的虚拟机中做测试提高工作效率.
问题:
迁移的6个MVC项目中有俩个碰到如下问题.
应用程序“TOOLINGDATASYSTEM”中的服务器错误Internet Information Services 7.5
错误摘要
HTTP 错误 403.14 - Forbidden
Web 服务器被配置为不列出此目录的内容。 详细错误信息
模块 DirectoryListingModule
通知 ExecuteRequestHandler
处理程序 StaticFile
错误代码 0x00000000
请求的 URL http://localhost:83/
物理路径 C:\Web\ToolNetWeb
登录方法 匿名
登录用户 匿名
最可能的原因:
•没有为请求的 URL 配置默认文档,并且没有在服务器上启用目录浏览。
可尝试的操作:
•如果不希望启用目录浏览,请确保配置了默认文档并且该文件存在。
•使用 IIS 管理器启用目录浏览。
1.打开 IIS 管理器。
2.在“功能”视图中,双击“目录浏览”。
3.在“目录浏览”页上,在“操作”窗格中单击“启用”。
•确认站点或应用程序配置文件中的 configuration/system.webServer/directoryBrowse@enabled 特性被设置为 True。
链接和更多信息当没有在 URL 中指定文档,没有为网站或应用程序指定默认文档,或者没有为网站或应用程序启用目录列表时,便会出现此错误。此设置可能是有意禁用的,以保护服务器内容的安全。
查看更多信息 »
解决:
因为项目是自己做的,并没有特殊设置.而且外部环境都是一样的.
因此对比正常发布的web.config文件发现.
- <system.webServer>
- <validation validateIntegratedModeConfiguration="false" />
- <modules runAllManagedModulesForAllRequests="true" />
- </system.webServer>
- <system.webServer>
- <validation validateIntegratedModeConfiguration="false" />
- </system.webServer>
- 缺少 <modules runAllManagedModulesForAllRequests="true" /> 补上即可.
附上通过搜索得到外链这位仁兄的更全:
http://www.cnblogs.com/youring2/p/3545175.html
切成图片保存,防止外链失效.