我有mvc 4 ASP.net 4.5网络应用程序说 version1 ,它最初是使用visual studio 2013开发的.Vition1已经成功部署在IIS8上,它已经启动并且没有任何问题。
我们要求将version1更新为version2。这是在Visual Studio 2013上在本地机器上实现和测试的,其中一切正常。 这一点可能有所帮助,在实现版本2时,我们使用了vs2015一段时间并回滚到vs2013。现在,我们将版本2移动到IIS8,作为托管版本1的同一IIS8上的单独网站(未更新版本1)。
现在版本2在尝试访问时抛出以下错误: HTTP错误403.14 - 禁止访问 Web服务器配置为不列出此目录的内容。
尝试了其他博客的以下不同建议,但没有解决问题:
1添加到网络配置文件:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
2在下面跑:
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
3尝试:
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0"/>
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" preCondition="" />
</modules>
</system.webServer>
4在解压缩包时取消选中或选中“发布时预编译”选项。
5 RouteConfig.cs文件也看起来像文件
$public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "StartUpPage", id = UrlParameter.Optional }
);
}
}
答案 0 :(得分:0)
我没有找到此错误的实际修复或原因。
但转身是创建新工作区并将旧项目集复制到新工作区。最后将其发布到Web服务器并没有抛出此错误。
导出包时,我的工作区或设置可能会出现问题。