HTTP错误403.14 – 禁止 – Web服务器configuration为不列出此目录的内容
我刚刚在Visual Studio 2012中创build了一个新的空白网站,并单击运行(即在浏览器中查看),我得到这个错误:
HTTP错误403.14 – 禁止Web服务器configuration为不列出此目录的内容。
我进入IIS,并点击目录浏览,然后确保目录浏览启用,但我仍然得到这个错误。 我无法弄清楚
我刚刚创build的网站项目没有列在IISpipe理器中的默认网站中,我认为这很奇怪。
我如何摆脱这个错误?
将其保存到你的webconfiguration文件中,然后重命名add value =“yourwebformname.aspx”
<system.webServer> <defaultDocument> <files> <add value="insertion.aspx" /> </files> </defaultDocument> <directoryBrowse enabled="false" /> </system.webServer>
其他
<system.webServer> <directoryBrowse enabled="true" /> </system.webServer>
去cmd键入这个:
对于x64操作系统:%windir%\ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet_regiis.exe -ir
对于x32操作系统:%windir%\ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_regiis.exe -ir
这将安装正确的版本和IIS将了解MVC目录浏览
发生此问题是因为该网站没有启用Directory Browsing
function,并且未configuration默认文档。 要解决此问题,请使用下列方法之一。 要解决此问题,我按照“ MS支持”页面及其推荐方法中的说明执行了方法1中的步骤。
方法1:启用IIS中的目录浏览function(推荐)
-
启动IISpipe理器。 为此,请单击开始,单击运行,键入inetmgr.exe,然后单击确定。
-
在IISpipe理器中,展开服务器名称,展开网站,然后单击要修改的网站。
-
在“function”视图中,双击“目录浏览”。
-
在“操作”窗格中,单击“启用”。
如果这不起作用,你可能会有不同的问题,而不仅仅是一个目录列表问题。 所以按照下面的步骤,
方法2:添加一个默认文档
要解决此问题,请按照下列步骤操作:
- 启动IISpipe理器。 为此,请单击开始,单击运行,键入inetmgr.exe,然后单击确定。
- 在IISpipe理器中,展开服务器名称,展开网站,然后单击要修改的网站。
- 在“function”视图中,双击“默认文档”。
- 在“操作”窗格中,单击“启用”。
- 在“文件名”框中,键入默认文档的名称,然后单击“确定”。
方法3:启用IIS Express中的目录浏览function
注意此方法适用于使用IIS Express时遇到问题的Web开发人员。
按着这些次序:
-
打开命令提示符,然后转到计算机上的IIS Express文件夹。 例如,转到命令提示符下面的文件夹:
C:\Program Files\IIS Express
-
键入以下命令,然后按Enter键:
appcmd set config /section:system.webServer/directoryBrowse /enabled:true
尝试将以下设置添加到web.config
文件。
<system.webServer> <modules runAllManagedModulesForAllRequests="true"/> </system.webServer>
这个问题可能有多种原因。 一个在IIS 8.5上为我工作的人如下
脚步
- 在search中input“打开或closures窗口function”。
- 点击服务器pipe理器中的“添加angular色和function”。
- 在向导中向下滚动到Web服务器,然后select:Web服务器 – >应用程序开发。 从列表中select除CGI以外的所有内容,如屏幕截图所示
- 最后点击Next并安装。
- 重新启动IIS
您的网站可能会开始工作。
设置一个起始页面。
当我遇到这个问题的时候,我进入了解决scheme资源pipe理器,find了我想要首先看到的页面(在我的例子中是“Home.aspx”),右键单击它并select“Set As Start Page”。这就解决了我的问题听起来非常类似于你)。这是在Visual Studio 2012专业版,我在Firefox中运行它。
空的网站模板创build一个包含Web.config文件但不包含其他文件的ASP.NET网站。 意味着你没有任何默认页面显示浏览或运行。
这个错误信息仅仅意味着你没有在IIS上正确地设置和configuration默认文档。
一旦configuration完成,错误信息将消失。
在IIS中的网站上:
- select“高级设置”
- 然后为应用程序池select“ASP.NET v4.0”
为了解决这个问题,确保你已经安装了MVC 2或者更高版本,安装.Net Framework 4.0,然后以pipe理员身份运行一个命令提示符并input下面一行:
对于32位(x86):%windir%\ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_regiis.exe -ir
对于64位:%windir%\ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet_regiis.exe -ir。
对于我的情况,创build一个空的Web Api项目后,我收到了同样的错误。
我通过编辑App_Start文件夹中的RouteConfig.cs来解决它:)
我把这行代码换成了: –
defaults: new { action = "Index", id = UrlParameter.Optional }
与以下内容:
defaults: new { controller = "Index", action = "Index", id = UrlParameter.Optional }
注意我只需要指定首先要调用索引操作的Controller。
那么所有上述的回应并没有解决我的情况(如我想)例如
- 从web.config启用目录浏览刚刚列出在我的项目中的所有文件和文件夹就像PHP会做,当你没有索引文件
- 设置defaultDocument也没有为我工作,但仍然得到了HTTP错误403.14(仍然不知道为什么)
如果在我的情况下可能有类似的情况,请尝试一下。
我有一个快速的补救办法。 事实上,我得到这个错误,因为我没有设置我的网页作为起始页。 当我做了我的网页(HTML / ASPX)设置起始页如下所示,我得到了这个错误更正。
我不知道这个解决scheme是否会帮助别人。
在标签system.webServer中添加到Web.config文件<modules runAllManagedModulesForAllRequests="true"/>
Asp.net 4没有在IIS中注册。 您必须在命令行中运行以下命令:
32位操作系统
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir
64位操作系统
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir
我得到这个错误,并将应用程序池pipe理的pipe道模式更改为“集成”解决了这个问题。
来源: 在IIS 8.5上运行.NET 4.6 MVC应用程序(Windows Server 2012)
右键单击表单项目,设置为起始页面
解决了
- IE11预览中未定义“WebForm_DoPostBackWithOptions”
- 如何检查用户是“login”?
- MVC3和实体框架
- WebAPI 2中的DefaultInlineConstraintResolver错误
- HttpRuntime.Cache和HttpContext.Current.Cache之间的区别?
- 在ASP.NET中,什么时候应该使用Session.Clear()而不是Session.Abandon()?
- ASP.NET MVC路由的无限URL参数
- 如何在ASP.NET中使用Quartz.net
- Visual Studio“无法在Web服务器上启动debugging。 networking服务器没有及时回应。“