使用我的 Nuxt 应用程序在 Plesk 服务器上构建时出错

Error during the build on the Plesk server with my Nuxt app

我有一个以 Magento 2 作为 CMS 的 Vue Storefront 2 项目。本地一切 运行 都很好。 当我在构建和部署它之前尝试在我的 Plesk 服务器上 运行 NPM install 时,出现以下错误:

npm ERR! code 1
npm ERR! path /var/www/vhosts/vuestorefront2.dev/node_modules/deasync
npm ERR! command failed
npm ERR! command sh -c node ./build.js
npm ERR! linux-x64-node-16 exists; testing
npm ERR! Problem with the binary; manual build incoming
npm ERR! stdout=
npm ERR! err=Error: Command failed: /opt/plesk/node/16/bin/node quick-test.js
npm ERR! /var/www/vhosts/vuestorefront2.dev/node_modules/bindings/bindings.js:135

我已尝试删除 package-lock.json 中对 deasync 的所有引用。 尽管 NPM install 然后 运行s 并允许我之后构建项目,但它不再在部署的实例上从 Magento 加载任何产品。然而,我在本地确实成功地获取和展示了产品。

当您遇到有关远程构建的问题时,第一步通常是在本地构建(使用 npm run build 之类的东西,然后 运行 在本地 npm run start)确定这是 Nuxt 问题还是 hosting/platform 问题。

在这里,看起来 OP 可以通过强制特定端点使用生产 URL 来解决他的问题。也许他缺少一些本地服务器。

这解决了问题

publicRuntimeConfig: {
  middlewareUrl: process.env.NODE_ENV === "production"
    ? "https://example.com/api/" // Your production URL
    : "http://localhost:3000/api/",
}