求助:如何在带HPanel的Hostinger共享主机部署Next.js项目
在Hostinger共享主机(HPanel)部署Next.js项目的解决方案
第一步:将Next.js项目改为静态导出
Hostinger共享主机无Node.js运行环境,无法支持Next.js的服务端渲染、API路由等依赖Node的功能,必须先将项目导出为纯静态资源:
- 在项目根目录的
next.config.js中添加静态导出配置:
/** @type {import('next').NextConfig} */ const nextConfig = { output: 'export', // 若绑定子目录,需配置basePath,例如:basePath: '/blog' } module.exports = nextConfig
- 执行构建命令生成静态文件:
npm run build
构建完成后,项目根目录会生成out文件夹,里面就是可直接部署的纯静态网站文件。
第二步:上传静态文件到Hostinger
- 登录HPanel,打开文件管理器,进入
public_html目录(若绑定子域名,需进入对应子域名的根目录)。 - 删除
public_html内默认的文件(如index.html、error.html)。 - 将
out文件夹内的所有内容(而非整个out文件夹)上传到public_html目录。
第三步:修复403权限问题
403错误多因权限配置不当导致:
- 确保所有文件权限设为
644,目录权限设为755(禁止使用777权限,存在安全风险)。在HPanel文件管理器中选中所有内容,右键选择更改权限批量设置。 - 若没有
.htaccess文件,新建一个并添加以下内容(解决静态路由刷新404问题,同时避免权限拦截):
RewriteEngine On RewriteBase / RewriteRule ^index\.html$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.html [L]
关键注意事项
- 若你的项目依赖API路由、服务端渲染(SSR)、增量静态再生(ISR),这些功能在Hostinger共享主机上无法运行,需升级到VPS/云主机,或更换支持Node.js的共享主机。
- 大文件推荐用FTP工具(如FileZilla)上传,比网页端文件管理器更稳定。
内容的提问来源于stack exchange,提问作者Mohamed Aarab
相关产品推荐
相关产品推荐

