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

如何将SvelteKit构建产物以服务器模式运行?

解决SvelteKit构建产物本地服务器运行问题

你的问题出在使用了@sveltejs/adapter-auto,这个适配器是为Vercel、Netlify等平台自动适配的,不会生成可直接用Node.js本地运行的生产构建产物。要本地运行构建后的应用,需要切换到adapter-node,步骤如下:

  1. 安装Node适配器
npm install @sveltejs/adapter-node --save-dev
  1. 修改svelte.config.js,替换适配器配置
    将原来的adapter-auto替换为adapter-node:
import adapter from '@sveltejs/adapter-node';
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';

/** @type {import('@sveltejs/kit').Config} */
const config = {
  preprocess: vitePreprocess(),
  kit: {
    adapter: adapter()
  }
};

export default config;
  1. 重新执行构建
npm run build
  1. 运行生产构建产物
    构建完成后会生成build文件夹,直接运行以下命令即可启动服务器:
node build

为什么直接运行.svelte-kit/build/server.js不行?

.svelte-kit文件夹是SvelteKit的中间构建产物,并不是最终的生产就绪代码。不同的适配器会把中间产物打包成对应平台的可运行代码,adapter-auto不会生成适合本地Node.js环境的产物,因此直接运行这个文件会报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 22:20:26