【问题标题】:IIS 10 on Windows Server 2016 not running my ASP.NET MVC websiteWindows Server 2016 上的 IIS 10 未运行我的 ASP.NET MVC 网站
【发布时间】:2019-04-02 05:01:56
【问题描述】:

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

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

“默认网站”使用具有 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。它说该命令无法在此操作系统上运行,但仍然可以运行。但是,问题仍然存在。

【问题讨论】:

  • @mjwills 我在根文件夹中添加了一个“Hello world”html 文件并将其命名为“bob.html”。结果服务器甚至不会向我显示该文件..
  • @mjwills 好的,现在它显示 bob.html... 我重新启动了网站,它可以工作了。但仍然无法让 MVC 工作..
  • 检查您是否谈到 (a) 正确的文件夹和 (b) 对文件夹的正确权限。如果任何软管不正确,IIS 将无法看到该文件。在 html 文件正常工作之前,请不要使用 asp.net。
  • @TomTom 单个 html 文件有效,它成功显示了 bob.html 中的内容。
  • 好的,那么这部分工作。现在制作一个最小的 asp.net 应用程序。慢慢积累。

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


【解决方案1】:

终于搞定了!!!

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

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

【讨论】:

  • 谢谢,我为此苦苦挣扎了 2 天,终于你的解决方案对我有用。
  • 在我的情况下需要 4.7 版本。 Windows 10 专业版
猜你喜欢
  • 2019-07-09
  • 2017-12-11
  • 1970-01-01
  • 2021-08-29
  • 1970-01-01
  • 2011-12-10
  • 1970-01-01
  • 2021-07-24
相关资源
最近更新 更多