【问题标题】:How to deploy Laravel + Nuxt application?如何部署 Laravel + Nuxt 应用程序?
【发布时间】:2021-07-15 06:55:48
【问题描述】:
我已经使用 Laravel As API 和 Nuxt As Front 构建了 Web 应用程序。这两个拼命建造。当开发正在进行时,这不是问题。因为我可以使用他们自己的开发服务器运行它们。然后我买了一个VPS 服务器来托管这个。现在的问题是我如何在我的VPS 上部署这两个应用程序。特别是我如何在vps 中正确部署nuxt 应用程序。它不是静态的一面。它是ssr 应用程序。
【问题讨论】:
标签:
javascript
laravel
nuxt.js
hosting
vps
【解决方案1】:
基本上,您将需要一些东西:
- 服务器(您已经拥有)
- nginx
- PM2
- 已安装节点/NPM
其中棘手的部分是确保服务器继续运行并在发生崩溃时自动重启。 PM2 解决了这个问题,您可以在此处阅读有关如何使用它的更多信息:https://nuxtjs.org/docs/2.x/deployment/deployment-pm2
您可以通过以下方式安装它:
npm install -g pm2
这将在您的服务器上全局安装 PM2,您将可以访问 pm2 命令。
按照上面的文档,你所要做的就是运行:
pm2 start all
这将启动 Nuxt 服务,它将在您在 nuxt.config.js 或 package.json 文件中定义的任何端口上运行。
现在您已经运行了 Nuxt 实例,您需要确保通过浏览器发出的请求最终到达 Nuxt 正在运行的端口上,这可以通过使用 nginx 的反向代理功能来实现,您可以阅读更多关于:
https://nuxtjs.org/docs/2.x/deployment/nginx-proxy/
该文档为您提供了一个 nginx 配置文件的示例,如果您已将默认 Nuxt 端口从 3000 更改为其他内容,则您无需更改 server_name 和 proxy_pass 以外的任何内容。
另外确保您已允许在您的服务器上侦听端口 80。