Doh*_*h09 3 deployment asp.net-core asp.net-core-webapi
发生什么了?
我在 Windows 服务器上向 UnoEuro 发布了一个网站。
当我这样做时,我不断收到错误消息:
“HTTP 错误 500.19 - 内部服务器错误
无法访问请求的页面,因为该页面的相关配置数据无效。”
我设置/尝试了什么?
我所做的是创建了一个 .NET Core 2.1 Web API,它使用 IIS 在我的计算机上很好地本地托管。然后,我将 Web api 发布到托管站点 UnoEuro,在那里我可以看到文件已按原样上传。
我询问了托管站点的支持,他们告诉我只需确保将其部署为独立的,否则他们将无法提供进一步的帮助。似乎存在某种与它似乎无法找到 webconfig 文件相关的托管问题。至少这是错误消息所说的。
我应该进行任何形式的设置吗?一个配置我应该改变?我是否应该在 Web API 中设置一些我可能错过的 SSL 设置?当我开始这个项目时,我告诉它强制使用 HTTPS,但如果那是错误的话,我肯定会收到另一条错误消息吗?
我尝试将目标运行时设置为 x64 和 x86 进行发布。
我以前从来没有向 Azure 以外的任何东西发布过这样的 API,所以我可能做错了一两件事,但我看不出它应该是什么?我已经谷歌搜索但没有找到任何似乎相关的东西。
大多数解决方案似乎都与更改服务器环境有关,而我对其没有太多控制权,我主要只是控制应用程序/Web api,至少在我看来是这样。
希望你有任何建议,我全神贯注。
附带问题:我应该为此使用 IIS 管理器吗?我目前正在通过 Visual Studio 2017 发布。
进一步理解的图像
发布设置
部署/发布的文件
我收到的错误信息
编辑:
我尝试将文件移动到与 ISS Manager 相同的域上的 /public_html 似乎表明它希望配置文件在那里。
然后会产生不同的错误消息,如下所示。
错误消息中的链接:https : //go.microsoft.com/fwlink/?LinkID=808681
很难说清楚,但我认为问题在于服务器上没有安装 ASP.NET Core 托管包。在 IIS 中托管有两个部分。首先,您需要 .NET Core 运行时,然后您需要 IIS 的 ASP.NET Core 托管模块。作为独立部署为您购买运行时,而不是 IIS 中的托管模块。通过发布 ASP.NET Core 应用程序创建的 Web.config 中有非标准部分。托管模块在 IIS 中支持这些配置部分(除其他外)。因此,配置错误似乎暗示这不会发生。
如果您不控制服务器,您将无能为力。老实说,在这一点上,我不会在您至少无法控制环境的任何地方主持会议。您可以以每月 5 美元或更少的价格从众多托管服务中获得完整的 VPS。要么继续托管在 Azure 中,要么寻找其他受人尊敬的云提供商,如 DigitalOcean、AWS 等。
| 归档时间: |
|
| 查看次数: |
2660 次 |
| 最近记录: |