我只是在Visual Studio 2012中创建了一个新的空网站,然后单击运行(即在浏览器中查看),但出现此错误:
HTTP错误403.14-禁止将Web服务器配置为不列出此目录的内容。
我进入IIS,单击“目录浏览”,然后确保启用了目录浏览,但仍然收到此错误。我不知道吗?
我刚刚创建的网站项目未在IIS管理器的“默认网站”中列出,我认为这很奇怪。
如何摆脱这个错误?
view
在浏览器中查看?
我只是在Visual Studio 2012中创建了一个新的空网站,然后单击运行(即在浏览器中查看),但出现此错误:
HTTP错误403.14-禁止将Web服务器配置为不列出此目录的内容。
我进入IIS,单击“目录浏览”,然后确保启用了目录浏览,但仍然收到此错误。我不知道吗?
我刚刚创建的网站项目未在IIS管理器的“默认网站”中列出,我认为这很奇怪。
如何摆脱这个错误?
view
在浏览器中查看?
Answers:
将此保存到您的Web配置文件中,然后重命名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>
发生此问题,因为该网站没有Directory Browsing
启用该功能,并且未配置默认文档。要解决此问题,请使用以下方法之一。若要解决此问题,我按照了“ MS支持”页面及其推荐方法中所述的方法1中的步骤进行操作。
方法1:在IIS中启用目录浏览功能(推荐)
启动IIS管理器。为此,请单击“开始”,单击“运行”,键入inetmgr.exe,然后单击“确定”。
在IIS管理器中,展开服务器名称,展开网站,然后单击要修改的网站。
在“功能”视图中,双击“目录浏览”。
在“操作”窗格中,单击“启用”。
如果这不起作用,则您可能遇到的问题不仅仅是目录列表问题。因此,请按照以下步骤操作,
方法2:添加默认文档
要解决此问题,请按照下列步骤操作:
方法3:在IIS Express中启用目录浏览功能
注意此方法适用于使用IIS Express时遇到问题的Web开发人员。
跟着这些步骤:
打开命令提示符,然后转到计算机上的IIS Express文件夹。例如,在命令提示符下转到以下文件夹:
C:\Program Files\IIS Express
键入以下命令,然后按Enter:
appcmd set config /section:system.webServer/directoryBrowse /enabled:true
转到cmd并输入以下内容:
对于x64 OS:%windir%\ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet_regiis.exe -ir
对于x32 OS:%windir%\ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_regiis.exe -ir
这将安装正确的版本,并且IIS将了解MVC目录浏览
尝试将以下设置添加到web.config
文件。
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
我只是将此代码段粘贴到web.config文件中,此错误已解决。
<system.webServer>
<directoryBrowse enabled="true" />
</system.webServer>
空的网站模板将创建一个ASP.NET网站,其中包含Web.config文件,但不包含其他文件。意味着您没有任何默认页面可浏览或运行。
此错误消息仅表示您没有在IIS上正确设置和配置默认文档。
配置完成后,错误消息将消失。
在IIS中的站点上:
错误:从Visual Studio运行WebForms ASP.Net网站时出现403.13。
拒绝访问根目录: http:// localhost:51365
导航到“登录”页面或存在的任何页面,它将起作用:
就我而言,在创建一个空的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进行任何操作。我以前也不需要,也不需要。
确保没有文件夹与您的页面相同,我有一个名为“ blog”的文件夹和一个名为“ blog.aspx”的页面,它正在尝试加载该文件夹,我在链接中注意到了这一点,将该文件夹更改为blogContent ,现在加载正常。
我在这里发布副本,因为您是搜索查询中的第一个。
问题可能是由于在Visual Studio上错误打开的选项卡上从IIS上的Visual Studio运行项目所致,因此解决方案是打开正确的选项卡(您要在浏览器上测试的Web窗体),或按照其他答案,请右键单击要设置为主页的Web表单,然后单击“设置为起始页”。
出于多种原因可能会发生这种情况。如果您已经尝试了上述所有方法,但仍然遇到相同的错误,那么我还有另一种解决方案。
发生这种情况的另一个原因是
解决方案:
尝试将应用程序端口更改为默认端口。例如,使用http://localhost/
代替http://localhost:25836/
如果您已经使用了先前应用程序的默认端口,请尝试更改为任何其他端口。例如:http://localhost:25364/
代替http://localhost/
这将允许IIS / IIS Express指向您尝试运行的较新应用程序的默认bin路径,该路径将具有启动该应用程序所需的所有dll。