NuxtJs 在 plesk 服务器上部署问题

NuxtJs deploying issue on plesk server

我在 plesk 服务器上托管了一个域。它包含 Nodejs V 12.4.0,我没有使用 express 之类的东西。我只是在我的电脑中使用 create-nuxt-app 创建 nuxt 应用程序,然后使用 运行 命令 npm run build,然后我将服务器上的 files/folder(.nuxt, nuxt.config.js, static 和 package.json) 上传到文件夹 httpdoc/merostatus.com/(在这里上传所有 files/folder).

在服务器中设置 Nodejs:

Document Root : /httpdocs/merostatus.com/static    
Application Mode : production  
Application URL : http://merostatus.com
Application Root : /httpdocs/merostatus.com  
Application Startup File : node_modules/nuxt/bin/nuxt.js

完成此设置后,我单击 Plesk 上的 NPM 安装 按钮并 重新启动应用程序

但是输出不是我们想要的。它正在搜索页面文件夹,当我将应用程序启动文件指向 .nuxt/server.js 时,它没有找到 vue 实例。

我的服务器刚刚上线以解决问题 https://merostatus.com

如果您有 target: server(默认),您确实需要 npm run build。通常的过程是通过 npm run buildnpm run generate(如果 target: static)。

然后,上传 您的 dist 目录就足够了。不需要任何其他文件。然后,运行 npm run start(某些平台会为您执行此操作)。

我不确定您的 Plesk 服务器配置,但您可以尝试构建您的应用程序并将 dist 目录拖放到 Netlify,至少看看它是否在那里构建:https://app.netlify.com/drop

那么,如果你做到了这一点,我们就可以寻找 Plesk。

我目前正在使用 Plesk VPS 服务器和 OS Ubuntu 20.04

我通过以下方式进行更改解决了问题

步骤 1: 添加了 nuxt-start 模块:npm install --save nuxt-start

步骤 2: 构建项目:npm run build

第 3 步:将项目上传到服务器,包括所有依赖项(整个项目不仅是 .nuxt)

第 4 步:更改服务器中 Nodejs 的设置:

Document Root: /httpdocs    
Application Mode: production  
Application URL: http://merostatus.com
Application Root: /httpdocs  
Application Startup File: node_modules/nuxt-start/bin/nuxt-start.js