c# - 将 Web 应用程序部署到谷歌云上的 ASP.NET 框架 VM 时如何修复 500 内部服务器错误?
问题描述
我正在尝试使用谷歌云平台在 Internet 上部署一个简单的 ASP.NET Web 应用程序。我按照此页面上的教程进行操作:https ://cloud.google.com/dotnet/docs/getting-started/hello-world (不过我上传了一个稍微复杂的应用程序)。因此,从创建 ASP.NET 框架虚拟机到从我的计算机到 VM 的部署,基本上一切都很顺利,因为我已经能够通过 VM IP 地址访问 Web 应用程序主页。
从源开始 Web 部署任务:manifest(C:\Users...\obj\Release\netcoreapp2.2\PubTmp\myApp.SourceManifest.xml) 到目标:auto()。
更新文件(默认网站\MyApp.deps.json)。
更新文件(默认网站\MyApp.runtimeconfig.json)。
更新文件(默认网站\web.config)。
成功执行 Web 部署任务。
问题是主页不会像我在本地部署它时那样显示(使用 IIS express)而是抛出一个
500内部服务器错误。您要查找的资源有问题,无法显示。
我发现一些有趣的主题提出了同样的问题:
部署网站:500 - 内部服务器错误:建议启用详细错误和/或更改 web.config 文件中的几行,但我的项目过程中没有 web.config 文件(只有一个Startup.cs 做了一些工作),我无法在谷歌虚拟机中操作它。
我注意到在将 Web 应用程序上传到 VM 之前,输出显示类似于以下的错误:https ://github.com/dotnet/sdk/issues/1897 (消息 NETSDK1041)所以我认为引用/平台程序集之间的差异可能是这些错误的根源,但是,为什么它们也不会影响 Web 应用程序的本地部署?
我希望我的网络应用程序在谷歌云的虚拟机上运行(基于通用的谷歌计算引擎 ASP.NET 框架),网络应用程序“正确”部署到主机虚拟机,但引发了一个狂野的 500 - 内部错误。有人知道我如何至少确定这个错误的来源吗?(帮助我找到 web.config 也会有很大帮助,我知道每个人都在某个地方有这个文件,但我找不到它,也不知道它的下落,因为我只是在 Visual 上使用了一个随机模板 MVC 应用程序Studio Community 2017 完成了所有的配置工作
解决方案
推荐阅读
- javascript - 如何在表中循环以获得包含值 x 的行(在一个范围内)?
- php - Laravel/SQL 从多对多关系返回数据作为数据数组
- c# - 实例化类时可以使用 Ninject 注入特定参数吗?
- javascript - FB CTF - SyntaxError: Grunt 没有生成 JS 文件
- java - 无法使用 request.getAttribute 在 jsp 页面上显示来自 servlet 的数据(它返回 null)
- git - 如何将 .gitignore 中的目录列入白名单并将 ~/.gitignore 中的文件列入黑名单?
- r - 使用带有条件语句的fluidRow
- python - 线程执行比顺序执行慢
- jquery - jquery 从 ID 列表中获取值
- apache-camel - 使用骆驼的pgp解密给出了内存不足的错误