如何将Strapi.js部署至cPanel?本地React+Strapi项目部署求助
cPanel部署Strapi后端实操指南
一、本地准备生产构建包
- 本地Strapi项目根目录下运行:
npm run build - 打包以下核心文件/文件夹:
build/(生产构建产物)package.json、package-lock.json(或yarn.lock)config/(自定义配置文件,如数据库、权限设置).env.production(生产环境配置文件,需提前修改好数据库信息)
二、cPanel环境配置
启用Node.js环境
- 打开cPanel面板,找到
Node.js管理器,点击创建应用 - 设置:
- 应用根目录:建议设为
public_html/strapi(避免和前端React项目冲突) - Node.js版本:选择Strapi官方推荐的版本(如16.x或18.x,避免高版本兼容性问题)
- 启动文件:填写
build/index.js(Strapi生产构建后的入口文件)
- 应用根目录:建议设为
- 点击
创建,记录自动分配的端口(后续可能用到)
- 打开cPanel面板,找到
创建数据库
- 进入cPanel的
MySQL数据库向导,创建新数据库、数据库用户 - 给用户分配该数据库的全部权限,保存数据库名、用户名、密码
- 进入cPanel的
三、上传并配置Strapi文件
- 用FTP或cPanel
文件管理器,把本地打包的Strapi文件上传到刚才创建的应用根目录(public_html/strapi) - 修改
.env.production的数据库配置:DATABASE_CLIENT=mysql DATABASE_HOST=localhost DATABASE_PORT=3306 DATABASE_NAME=你的数据库名 DATABASE_USERNAME=数据库用户名 DATABASE_PASSWORD=数据库密码 DATABASE_SSL=false - 确保
uploads/文件夹权限设为755(媒体上传需要写入权限)
四、安装依赖并启动
- 打开cPanel的
终端,进入Strapi目录:cd public_html/strapi - 安装生产依赖(跳过开发依赖节省资源):
npm install --production - 回到
Node.js管理器,找到刚创建的Strapi应用,点击重启 - 点击
打开按钮,访问Strapi后台(如果提示权限错误,检查文件夹权限或数据库配置)
五、常见问题排查
- 内存不足报错:在Node.js管理器的
启动选项里,修改启动命令为:
(512代表512MB内存,可根据cPanel分配的资源调整)node --max-old-space-size=512 build/index.js - 无法访问后台:检查
.env.production里的APP_URL是否设为cPanel分配的域名/端口,或通过cPanel域名管理器设置子域名指向Strapi应用 - 媒体上传失败:确认
uploads/文件夹权限为755,且cPanel的文件管理器未限制写入权限
内容的提问来源于stack exchange,提问作者Omar Jûmâ
相关产品推荐
相关产品推荐

