将 Angular 应用程序部署到 Azure Web 应用程序 - 但显示默认 Azure 页面

Pra*_*ane 17 azure azure-devops angular azure-webapps

我在 Azure 中创建了一个 Web 应用程序来托管一个 Angular 应用程序。我选择了运行时如下:

在此处输入图片说明

但我的本地设置详细信息:

  1. 节点版本:v13.0.1
  2. 角度版本:8.2.11

我使用 Anguler cli 创建应用程序,然后运行 ​​ng build --prod 来创建 dist。然后我尝试了以下方法将 Angular 应用程序部署到 Web 应用程序: 1. 在 VS Code 中使用 Azure App Service 扩展 2. 使用 FileZilla 的 FTP 以及来自 Web 应用程序部署中心的 ftp 详细信息。

但是,当我浏览 url:https ://eventzweb.azurewebsites.net/ 时,我 从 angular 应用程序中看到了以下页面,但没有看到我的页面。

在此处输入图片说明

知道为什么会这样吗?为什么我看不到我的页面?

感谢您在高级方面的帮助。

Lui*_*v99 36

最简单的解决方案:

转到您的应用服务 > 配置

在配置下,选择选项卡 -> 常规设置

在启动命令字段中,输入以下命令:

pm2 serve /home/site/wwwroot --no-daemon --spa

现在您的应用程序应该能够显示而不是默认页面。

你的应用程序没有运行的原因是它在 Linux 上运行,而 Linux 没有 IIS 服务器来处理你的节点应用程序的路由(它沿着这些方向走)。

观看此视频,此人应得的所有功劳(如果这救了您,请点赞他的视频):https : //www.youtube.com/watch?v=HLhlKIIfaZs

  • 这救了我的命。非常感谢@LuisDev99 (2认同)

Meh*_*oha 7

对我有用的是让 Node 12 运行时+在 @LouisDev22 给出的常规设置中设置启动脚本(非常感谢):

pm2 serve /home/site/wwwroot --no-daemon --spa
Run Code Online (Sandbox Code Playgroud)

然后在应用程序设置中将SCM_TARGET_PATH变量设置为/home/site/wwwroot,仅当您首次使用另一个运行时运行应用程序服务时才需要此变量。

PS1:您可以在应用程序服务配置菜单中找到常规和应用程序设置。

PS2:布拉沃蔚蓝


Pra*_*ane 2

我通过以下方式解决了这个问题:

  1. 通过选择运行时堆栈作为 ASP.NET V4.7 并选择操作系统作为 Windows 创建 Web 应用程序。
  2. 使用 Azure DevOps 部署角度应用程序。

步骤在此博客文章中:http://dot-net-box.blogspot.com/2020/01/deploy-angular-8-app-to-azure-with.html