首页 > 解决方案 > 在 ASP.net Core 2.1 MVC 的开发机器上更改主机名不起作用(在 MVC 5 上很好)

问题描述

我想更改本地主机名,以便http://localhost/app1可以变成http://app1 - 用于几个不同的 ASP.net Core 2.1 MVC 网站。

我在 Windows 10 中使用 IIS。(每次尝试 IIS Express 时,我都会遇到各种可靠性问题 - 我宁愿使用完整的 IIS)。

我关注了这篇文章: https ://www.mojoportal.com/adding-a-host-name-to-the-hosts-file-for-local-testing

更改主机文件,然后在 IIS 中添加新网站,而不是在默认网站下添加应用程序。

我想这样做有多种原因,包括防止密码在本地主机上的许多网站上自动填充。

这在 MVC 5 站点上运行良好 - 但在 .net Core 2.1 MVC 站点中,我得到一个

HTTP 错误 502.5 - 进程失败

如果我查看日志 - 我已经在各个站点上尝试过 - 我会收到如下错误:

未找到应用程序依赖项清单 (AppName.deps.json) 中指定的程序集:包:'Stripe.net',版本:'19.8.0' 路径:'lib/netstandard1.2/Stripe.net.dll'

这不仅发生在 Stripe 身上。

我猜的 deps.json 文件是动态创建的——我找不到它。这些站点可以很好地部署到服务器。

为什么会发生这种情况 - 如何将主机名从 .net core 2.1 MVC 站点的 localhost 更改?

如果我创建一个模板 .net Core 2.1 MVC 站点,它可以让我做得很好,奇怪的是,但看不到明显的差异。

尽管我已经找了几个小时,但我无法直接在 Google 上找到任何关于此的内容。

我发现了这个 - 但它没有帮助: ASP .NET Core 2.0 将“localhost”更改为“主机名”

谢谢。

更新

vanilla .net core mvc 2.1 应用程序工作正常,但一旦安装了 1 个 nuget 包,此错误就会再次发生:

未找到应用程序依赖项清单 (hosttest.deps.json) 中指定的程序集

所以 nuget 包存在一些路径问题 - 虽然找不到如何修复它。

标签: asp.net-coreasp.net-core-mvcasp.net-core-2.0asp.net-core-2.1

解决方案


推荐阅读