c# - Windows Server 2016 上的 IIS 10 未运行我的 ASP.NET MVC 网站

标签 c# asp.net-mvc iis-10

我刚买了一台新的基于云的虚拟机,安装了 Windows server 2016。我还确保 IIS 10 安装了 .NET Framework 4.6 和 ASP.NET 4.6。

enter image description here

我的 ASP.NET MVC 应用程序以 .NET 4.5 为目标,并使用 Web 部署成功发布到此服务器上的“默认网站”。 (在这里可以看到所有asp.net mvc发布的文件)

enter image description here

“默认网站”使用具有 v4.0 .NET CLR 版本的“DefaultAppPool”。

但是当我在浏览器中打开网页时,收到“403 - 禁止访问:访问被拒绝”。错误。我做了研究,对我来说,IIS 似乎从未尝试将其作为 ASP.NET MVC 应用程序打开。它只是尝试查找与“controller/Action”.html 同名的物理文件,当然找不到。我尝试过的解决方案:

  1. 还有另一篇文章提到 IIS 模块配置中的“UrlRoutingModule-4.0”。就我而言,路由模块由于某种原因不存在。我添加了它,但没有任何变化。此外,每次我从 VS 重新发布网站时,部署成功后模块就会消失。

  2. 我也尝试添加 <modules runAllManagedModulesForAllRequests="true"/> 到我的 webconfig 文件,也不走运。

  3. 在服务器上运行 aspnet_regiis -ir。它说该命令不能在此操作系统上运行,但仍然可以运行它。但是,问题仍然存在。

最佳答案

我终于成功了!!!

解决方案是转到控制面板,然后单击“打开和关闭 Windows 功能”,然后转到“服务器角色”->“Web 服务器 (IIS)”->“Web 服务器”->“应用程序开发” ,在这里您需要确保安装了“.NET Extensability 4.6”和“ASP.NET 4.6”。

显然,当安装 IIS 10 时,默认情况下不会安装这些。感谢大家的帮助。

关于c# - Windows Server 2016 上的 IIS 10 未运行我的 ASP.NET MVC 网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53042531/

相关文章:

c# - Unity 中的闪光效果

css - jQuery Mobile 更改背景图像

asp.net - IIS 10 和 Visual Studio 2017 中的 HTTP 错误 500.19

c# - 从另一个站点重定向流时出现 502 错误

c# - C# 单元测试中的 RuntimeType 而不是 Type

c# - ConnectionString 在部署到 AWS Elastic Beanstalk 时转换

angular - 我们可以在同一个端口下托管两个 Angular 项目吗

authentication - 使用 Azure AD 身份验证的 IIS 身份验证设置

C# RegEx 精确匹配模式

javascript - 在 ASP.NET MVC 3 中上传文件而不刷新页面