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

使用Qwik Express Adapter部署至Vercel遇404问题求助

Qwik Express Adapter + Prisma 部署Vercel出现404问题排查与解决

核心问题原因

Qwik Express Adapter依赖Node.js服务端逻辑处理请求(比如SSR、API路由),你当前按静态站点配置部署,Vercel仅托管dist目录的静态文件,忽略了Express服务端入口,导致请求无法被正确路由,触发404。

具体修复步骤

1. 调整Vercel框架预设与运行时

  • 框架预设不要选Vite,改为Node.js(或直接留空,让Vercel自动检测)
  • 确保Vercel启用Node.js运行时,而非静态托管模式

2. 优化依赖与构建脚本

  • 构建命令保持:npx prisma generate && vite build
  • 在package.json中添加postinstall脚本,确保Prisma客户端在依赖安装后自动生成:
    "scripts": {
      "postinstall": "prisma generate"
    }
    

3. 添加Vercel配置文件(vercel.json)

在项目根目录创建vercel.json,指定Express服务入口文件(根据你的项目结构调整路径,比如dist/entry.express.js):

{
  "buildCommand": "npx prisma generate && vite build",
  "functions": {
    "dist/entry.express.js": {
      "runtime": "@vercel/node@3"
    }
  },
  "routes": [
    {
      "src": "/(.*)",
      "dest": "dist/entry.express.js"
    }
  ]
}

注:若你的Express入口是server/index.ts,构建后路径通常为dist/server/index.js,对应修改上述配置即可。

4. 检查Prisma部署细节

  • 确保数据库连接字符串通过Vercel环境变量配置,不要硬编码在代码中
  • 确认prisma generate生成的客户端文件被包含在构建产物中

验证步骤

  1. 本地执行vite build,确认dist目录下生成了Express入口文件
  2. 推送修改至代码仓库,重新触发Vercel部署
  3. 部署完成后查看Vercel函数日志,确认Express服务正常启动

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 15:42:42