You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Plesk上部署Shopware PWA应用并解决仅显示Nuxt默认页问题

1. 修正服务端启动逻辑

你当前的server.js存在生产环境重复构建、未等待Nuxt实例就绪就挂载中间件的问题,会导致加载默认空Nuxt模板,替换为以下代码即可:

const express = require('express');
const { Nuxt } = require('nuxt');

const config = require('./nuxt.config.js');
const app = express();
const port = process.env.PORT || 3000;

// 固定生产模式
config.dev = false;

async function startServer() {
  const nuxt = new Nuxt(config);
  // 等待Nuxt实例完全就绪
  await nuxt.ready();
  app.use(nuxt.render);
  app.listen(port, () => {
    console.log(`Shopware PWA running on port ${port}`);
  });
}

startServer();

注意:生产环境不要在线执行构建操作,提前在本地运行npm run build,将生成的.nuxt目录一起上传到服务器即可。

2. 校验Shopware PWA核心配置

检查项目根目录的nuxt.config.js配置项:

  • 确认shopwareEndpoint参数为Shopware后端的公开可访问地址,不能使用localhost或内网地址
  • 确认shopwareAccessToken参数为Shopware后台对应销售渠道生成的访问密钥,无拼写错误
  • 确认Nuxt配置的target为server模式,不要设置为static静态模式

3. 调整Plesk托管配置

打开站点的Plesk Node.js管理页:

  • 确认应用启动文件设置为index.js,和项目入口文件一致
  • 确认应用根目录为上传Shopware PWA代码的根目录,需包含.nuxt、nuxt.config.js、package.json等核心文件
  • 确认自定义环境变量中NODE_ENV为production,未被覆盖为开发模式
  • 点击「安装依赖」按钮重新拉取所有依赖,完成后点击「重启应用」生效

4. 规范部署流程

正确的部署步骤如下:

  • 本地开发环境完成功能测试后,执行npm run build,确认本地启动服务可正常展示店铺内容
  • 上传以下文件/目录到Plesk应用根目录:
    • 本地构建生成的.nuxt目录
    • 静态资源static目录
    • 配置文件nuxt.config.js
    • 启动文件index.js、server.js
    • 依赖清单package.json、package-lock.json/yarn.lock
  • 不要手动上传本地的node_modules目录,通过Plesk后台自动安装依赖避免环境兼容问题

5. 异常排查

如果修改后仍无法正常访问,查看Plesk Node.js管理页的应用日志:

  • 若出现Shopware API请求失败报错,检查后端地址、访问密钥是否正确,确认服务器网络可正常访问Shopware后端
  • 若出现模块缺失报错,重新执行依赖安装操作,或手动上传本地验证可用的node_modules目录

内容的提问来源于stack exchange,提问作者Martin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 20:09:03