我开发一个ASP MVC Web项目。 现在我有迫使我部署到发展的IIS7 inmiddle的要求(检查某些功能)。 我得到每当我试着输入网站的URL上面提到的错误消息。 (注:发展机:Vista家庭高级版,IIS7)
我做了什么到现在为止:
编辑HOSTS文件(C:\ WINDOWS \ SYSTEM32 \ DRIVERS \ ETC \主机)。
把两个域在它(127.0.0.1 domain1.com和127.0.0.1 domain2.com)。
创建文件夹C:\网站\ dirOfApplication并从Visual Studio 8中部署到该文件夹。
在IIS7创建与主机名称domain1.com和应用程序文件夹上面的一个新的站点。
键入Web浏览器的结果地址domain1.com上述错误(HTTP错误403.14 - 禁止 - Web服务器被配置为不列出此目录的内容。)
我想我失去了一些东西,但不知道是什么! Tryed部署文件System.Web.Mvc,System.Web.Abstraction&System.Web.Routing机智相同的结果。 每当我试着打F5和运行应用程序,它工作正常!
Answer 1:
也许是有用的人:我的应用程序IIS 7.0转换为MVC 4 .NET框架4.5和安装框架,我的服务器上后,我遇到的问题中提到的相同的“禁止”的错误。 我试过上述所有选项都无济于事,当我注意到了
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
从我的web.config不见了。 加入之后,一切工作。 很简单,但容易忽视...
编辑:
当然,上述解决方案的工作,但它的确是一种资源的浪费。 我觉得这是更好地添加为所指出的路由模块克里斯·赫林的意见。
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0" />
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
</modules>
</system.webServer>
Answer 2:
回答了SO 在这里 ,问题: 403 -禁止对IIS7.5基本MVC 3部署
运行aspnet_regiis -i
。 通常,我发现你需要做的是让4.0的应用工作。 打开命令提示符作为Administrator
(右键单击命令提示符图标并选择以管理员身份运行):
cd \
cd Windows\Microsoft.NET\Framework\v4.xxx.xxx
aspnet_regiis -i
一旦安装并注册,请确保您的应用程序是使用设置为.NET 4.0的应用程序池。
更新:我刚刚发现了一个问题,使用此命令。 使用-i更新所有的应用程序池ASP.NET 4.0。
使用aspnet_regiis -ir
安装ASP.NET版本,但不改变任何Web应用程序到这个版本。 您可能还需要审查-iru选项。
Answer 3:
我也遇到了这个错误。 所有配置和权限是正确的。 但我忘了Global.asax中复制到服务器,而这正是给了403错误。
Answer 4:
这是因为过于确定你(我)在做什么!
在我的机器有IIS安装7,但所需要的ASP.NET组件(控制面板 - >程序 - >打开/关 - > ASP.NET)不是。
所以在安装这个问题解决了
Answer 5:
在我的情况下下面的方法帮了我:
aspnet_regiis -i
中Windows\Microsoft.Net\Framework
将模块添加到system.webServer
<system.webServer> <modules runAllManagedModulesForAllRequests="true"/> ... </system.webServer>
Answer 6:
我遇到过同样的问题。 此Microsoft支持文章的固定对我来说。
https://support.microsoft.com/en-us/help/2023146/mvc-2-and-asp.net-4-web-forms-applications-that-use-url-routing-might-return-http- 404-错误-当-它们-尝试到进程-扩展名的URL上-IIS -7-和-IIS-7.5
在“打开Windows功能打开或关闭” Windows控制面板的对话框中的“程序和功能”应用程序,请执行以下步骤:
- 导航到以下节点:互联网信息服务 - >万维网服务 - >常见HTTP功能
- 确保“HTTP错误重定向”选项被选中。
-要么-
- 导航到以下节点:互联网信息服务 - >万维网服务 - >性能特点
- 确保“静态内容压缩”选项被选中。 任一选项已被选定后,点击“确定”保存更改。
重新启用或者HTTP错误重定向模块或静态内容压缩模块可确保ASP.NET和IIS正确同步HTTP管道事件。 这使URL路由模块来处理extensionsless网址。
Answer 7:
尝试应用如下图所示进行如下设置:
1)提供必要的许可权IIS_IUSRS
用户IIS Server
(右键单击该网站,然后编辑权限>安全性)。
2)如果你使用.NET Framework 4
,确保.NET Framework版本是v4.0
的Application Pool
,您的网站使用。
希望这可以帮助...
Answer 8:
另外,也请,如果你正在运行64位,已启用的应用程序池设置32位应用程序
Answer 9:
在取消“预编译出版社在” -我得到的我刚刚写在VS2015 Web服务的403.14错误,所以我重写了它在VS2013,并得到同样的错误。 在这两种情况下,我不得不“预编译出版在”上。 我未选中,但仍然得到错误。 在我来说,我也有“ 删除发布之前,所有现有文件 ”,但复制新发布的文件有之前没有删除一切从服务器上的目标目录。 如果你不这样做, -一个“PrecompiledApp.config”文件留下这会导致问题。 一旦我删除的文件我在VS2013和我的web服务的VS2015版本都金。
Answer 10:
请注意,有时错误的Managed pipeline mode
将导致此错误。 有两种选择,选择integrated
和classic
。
Answer 11:
如何解决“HTTP错误403.14 - 禁止访问Web服务器被配置为不列出此目录的内容”
当你有MVC 2+运行托管在IIS 7 +,这是因为ASP.NET 4在IIS中未注册时出现此错误。 以我为例,我创建一个MVC 3项目,并收留了它在IIS 7.5。
为了解决这个问题,请确保您有MVC 2或以上和.NET Framework 4.0安装,然后运行命令提示符管理员,键入以下命令行:
32位(x86)的
%WINDIR%\ Microsoft.NET \框架\ v4.0.30319 \ ASPNET_REGIIS.EXE -ir
64位(64位)
%WINDIR%\ Microsoft.NET \ Framework64 \ v4.0.30319 \ ASPNET_REGIIS.EXE -ir
Answer 12:
如果顶部的答案不工作,寻找一个名为config PrecompiledApp.config
在主机目录,如果它存在删除它。 此文件可防止IISExpress和LocalIIS正常工作。 (我认为这是一个错误)在我的情况下,文件的内容是:
<precompiledApp version="2" updatable="true"/>
而我100%肯定的,这是我的情况的问题,因为我在2小时内尝试了一切,并用此配置测试很多次。
还有一两件事:你不能使用aspnet_regiis
在新版本的Windows和IIS所以尽量
dism /online /enable-feature /featurename:IIS-ASPNET45 /all
Answer 13:
我想这里的一切; 毫无效果。 问题是在我Web.config
文件,在某种程度上依赖集绑定接到最低值变1
至最低0
。
<!-- was -->
<runtime>
<assemblyBinding>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
<!-- should have been -->
<bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
Answer 14:
我也遇到同样的错误,尽管由于以下原因,所有提供的解决方案:
- 丢失的DLL
- 数据库连接字符串指向一个无法访问服务器。
Answer 15:
另外一个更多的事情可以是可能的
安装.NET Framework 4.0手动
这个解决方案是IIS7上窗7
打开CMD与管理previleges
进入目录 “C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319”
-I型ASPNET_REGIIS.EXE
得到了你的INET经理在运行命令“INETMGR”打字
刷新你的IIS7
重新加载该网站。
Answer 16:
检查您的Global.asax文件。 就我而言,它是空的。
Answer 17:
我知道这是一个老话题,但你也可以得到这个错误(在调试),如果你有一个名为一样在控制器路由文件夹。
举例来说,如果你有一个UserController中,有一个名为/用户的路线,你也有你的解决方案称为“用户”文件夹,然后IISExpress将尝试浏览的文件夹,而不是展示你的看法。
Answer 18:
在我的情况的web.config和除/ bin文件夹中缺少的所有文件(不以某种方式复制)。
傻,但是这是我已经检查的最后一件事。
Answer 19:
最近,我有这个错误,发现问题是由功能“HTTP重定向”引起了不被我的Windows服务器上启用。 本博客文章帮我打通故障排除找到答案(尽管是旧的Windows Server版本): http://blogs.msdn.com/b/rjacobs/archive/2010/06/30/system-web-routing-routetable -不是,工作与- iis.aspx为新服务器去电脑管理,然后向下滚动到Web服务器角色,然后单击add role services
Answer 20:
我一直在使用身份假冒:
<system.web>
<identity impersonate="true" userName="domain\username" password="password"/>
</system.Web>
当推到服务器,你必须给该用户名访问Temporary ASP.NET
文件夹,以便它可以读/写/执行正确:
C:\Windows\Microsoft.NET\"frameworkversion"\"aspversion"\Temporary ASP.NET Files
显然,与正在使用的版本替换“frameworkversion”和“aspversion”。
Answer 21:
我使用的是:赢服务器2012 R2 / IIS 8.5 / MVC4 / .NET 4.5
如果上述的工作,然后试试这个:
取消选中“发布期间预编译”
这踢我的屁股了几天。
Answer 22:
用C#4.5 ASP.NET项目我已经在Web平台安装程序安装 ASP.NET扩展解决这样的问题
Answer 23:
我有这个问题,但它是通过将Internet信息服务(IIS)管理器,双击目录浏览和点击启用容易固定。
就我而言,我可以直接访问文件,但无法访问文件夹。
Answer 24:
我知道你曾在内部主机这个问题,但我已经在外部主机经历过这样一个问题之前,在我的情况下,它有它自己的分辨率,也许它可以拯救别人的时间:
事实上我的网站是由某种原因,目前我不知道拦住,检查出来,如果你有同样的问题,在WebsitePanel主页转到网页 - >网站,然后从列表中选择您的网站的域名之后,在页面的右边刚打开,请检查您是否看到这个词已启动,否则,如果你看到停止了字,使之再次上手。 就这样。
Answer 25:
我用了一个数字,这意味着它要我的其他服务器中的一个输入了错误的IP地址。 很混乱,你得到一个.NET错误页,但在错误的机器!
Answer 26:
想在这里建议每一个解决方案之后,我发现了另一个可能的解决方案: URLScan的
在IIS的WebDAV已禁用,即使在我的应用程序的web.config,DeltaV的处理器和模块已被删除。 放还是返回403 -无需在IIS日志的任何日志条目禁止 。 (GET / POST工作的罚款)。
原来,IIS具有的活性ISAPI滤波器(URLScan的)启用这阻止所有看跌期权。 URLScan的去除后,它为我工作。
Answer 27:
步骤1:选择的量,HTTP错误在IIS生产,然后在目录浏览点击如下所示的图像中的位置:
步骤2:在目录浏览窗口在IIS点击在右侧操作使能如下面的图中:
现在,目录浏览为您的asp.net网站的启用,只需重新启动IIS中的Web应用程序和浏览网站在浏览器中看到的结果。
Answer 28:
你可以很容易地通过执行以下步骤解决这个问题:
打开IIS管理器,然后选择你的网站,你要部署(从左侧树状面板),然后双击应用程序设置图标,打开应用程序设置对话框,然后你会看到在该行命名的网页上屏幕,双击网格视图:启用和设定值设置为true(这是默认为false)。
它的工作对我来说,因为我做之前,我收到了同样的错误,我甚至支持目录浏览功能 (如在IIS论坛推荐的官方IIS引导),但是当我浏览网站播下一个目录列表,而不是实际的网页,但是当我做了这个问题上面的步骤解决,每一件事情的罚款(但不要忘记解决,当然这个问题后,授予在SQL登录asppool访问)
正如我所说的它的工作很适合我,我希望它运作良好,对你来说太好运
文章来源: ASP MVC in IIS 7 results in: HTTP Error 403.14 - Forbidden