部署你的 Next.js 应用
harvis serves static files, so this works for the part of Next.js that produces static files: static export. Add one line to your config, build, and the CLI takes it from there. Server-rendered routes, API routes, and middleware don't run here — there's no server behind this host.
- 01
Enable static export
Add "output: 'export'" to next.config.js. Routes using API routes, middleware, or server-side rendering won't build — everything else does.
- 02
Build the app
Run "npm run build". With static export on, Next.js writes fully rendered HTML, CSS, and JS to an "out" folder instead of starting a server.
- 03
部署它
在项目根目录运行 "npx harvis deploy out"。首次部署无需配置、无需登录——你会立即拿到一个可访问 URL,以及一个私密认领链接,方便你随时把网站关联到一个免费账号。
一条命令部署 Next.js
构建你的项目,然后把输出文件夹交给 harvis。首次部署无需账号——你会拿到一个可访问链接,以及一个用于以后管理网站的私密认领链接。
npm run build npx harvis deploy out
更喜欢拖拽文件而不是用终端?构建项目后,把输出文件夹拖到这里即可用同样的方式发布。
Next.js 部署常见问题
I use next/image or API routes. Can I still deploy here?
API routes and the default next/image loader need a server, so they don't work under static export. next/image still works if you set images.unoptimized: true (or point loader at an external image service) — everything else in the App or Pages router that doesn't touch the server builds fine.
Do dynamic routes like /blog/[slug] work with static export?
Yes, as long as they implement generateStaticParams (App Router) or getStaticPaths (Pages Router) so Next knows which pages to pre-render at build time. Routes with no way to enumerate their params ahead of time can't be static.
把 Next.js 应用部署到 harvis 真的免费吗?
是的,无需信用卡。免费额度为每个网站 500 个文件、50 MB,对于一个静态 Next.js 构建产物来说绰绰有余。已发布的网站不会过期——会一直在线,直到你删除它们。
已部署的 Next.js 网站可以使用我自己的域名吗?
每个网站都会获得一个免费的 harvis.dev 地址,认领之后你可以在仪表盘中选择自己的子域名——比如 my-app.harvis.dev,而不是一个随机地址。把你已经拥有的域名(比如 mystore.com)指向该网站,目前还不支持。
这和把 Next.js 部署到 Vercel 或 Netlify 有什么不同?
Vercel 和 Netlify 的核心是连接一个 Git 仓库,在他们的服务器上运行构建,并通过一个仪表盘进行配置。harvis 跳过了这一切:你在本地(或自己的 CI 中)构建,对输出文件夹运行一条命令,就能拿到一个链接——无需项目搭建,直到你想保留这个网站才需要账号。
要部署别的东西?
各处的方法都一样——先构建,然后用 npx harvis deploy 部署输出。