我在Github存储库中有一个webapp,它有一个Angular客户端和一个Node Express后端服务器。我不知道如何将这些同时部署到Azure webapp。这些教程都没有涵盖这一点。他们告诉你要做的唯一事情是在根目录中有一个index.html或server.js,这不是我的应用程序的结构。
但我确实尝试将服务器移动到根目录中的server.js,然后没有发生任何事情。
我不知道从哪里开始。非常感谢您的帮助。
告诉我您需要哪些更多信息,因为我不知道并且没有这方面的文档。
更新:这些似乎都不起作用。我尝试将/
的虚拟路径切换到index.html
所在的dist文件夹,但这没有做任何事情。
答案 0 :(得分:0)
您似乎也在https://social.msdn.microsoft.com/Forums/azure/en-US/a6cbc494-dc42-4962-99c7-947cee7ff25a/nodejs-deploying-angular-spa-application-node-server-through-github-continuous-integration?forum=windowsazurewebsitespreview上使用此问题在MSDN上打开了一个帖子。
Azure上的Node.js应用程序应该在应用程序的根目录中有app.js
或server.js
。
所以这是一个解决方法,如果您希望dist文件夹中的角度应用程序充当Web应用程序的前端,并且expressjs应用程序充当后端服务。
您可以在根目录中部署express js应用程序,也可以在同一根目录中部署angular app文件夹。然后,您可以在exrepssjs路由中配置角度应用程序。 E.G
假设您的角度应用入口在根目录的index.html
文件夹中为dist
:
app.get('/', function(req, res) {
res.sendfile(__dirname+'/dist/index.html')
});
将路由" /"你的角度应用程序。
答案 1 :(得分:0)
要解决您的问题,我建议您在复数视频上查看shayne boyer和john papas课程。他们很好地解释了这个话题。 play-by-play-angular-2-app-deployment
我自己开始在那里,但必须做一些调整才能让它完全运转。
诀窍是在本地构建文件并将构建文件提交到单独的文件夹(dist)。
此外,您还需要添加:
如果您希望在提交时自动部署您的应用,则需要设置githook。单击链接以获取说明。另外,对于githook工作,您需要在您的azure Web应用程序中声明一个APP设置变量声明,名为' Project'值等于你的构建文件夹(在我的情况下= dist。)。
我在azure中有一个带有工作演示的ng2 repo。 Ng2a.Frontend。你可以在那里找到dist文件夹。