沙巴克传奇H5服务端搭建教程:三步配置环境、服务与客户端,半天内跑起游戏。
沙巴克传奇H5服务端搭建的核心就三步:装环境、配服务、改客户端指向。下面按顺序操作,半天内能让游戏跑起来。
沙巴克传奇H5服务端需要什么环境?
沙巴克传奇H5服务端本质是一套Node.js+MySQL的后端程序,外加静态资源服务器。你需要一台能装数据库和Node的Linux或Windows机器,内存至少2GB,硬盘20GB以上。
- 操作系统:推荐CentOS 7或Windows Server 2012以上
- Node.js:14.x或16.x版本,不要用18以上容易报错
- MySQL:5.7版本,字符集设为utf8mb4
- Redis:可选,用于缓存会话,不装也能跑
- Nginx:用于反向代理和托管H5页面
怎么安装和初始化MySQL数据库?
先装好MySQL并导入服务端自带的SQL文件,这一步决定了账号和角色数据能不能正常写入。
- 用yum或安装包安装MySQL 5.7,启动服务并设置root密码
- 创建数据库,命名为sabak_server,字符集用utf8mb4
- 用Navicat或命令行导入服务端压缩包里的db.sql文件
- 检查关键表是否导入成功:account、role、guild三张表必须存在
- 在MySQL配置文件中把max_connections调到500,避免多人同时登录报错
服务端怎么配置和启动?
服务端配置文件集中在config目录,改对数据库连接和端口就能启动。
- 解压服务端到/root/sabak目录,确认package.json在根目录
- 用npm install安装依赖,国内网络慢可以换淘宝源
- 进入config目录,编辑db.json,填入数据库地址、用户名、密码和库名
- 编辑server.json,设置游戏逻辑端口(默认8001)和GM后台端口(默认8002)
- 执行npm start启动,看到“server listening on 8001”表示成功
注意:如果启动报错找不到模块,先删掉node_modules重新install,多半是依赖版本不匹配。
H5客户端怎么指向自己的服务端?
H5前端是静态文件,把所有请求地址改成你的服务器IP或域名就能连上。
- 把H5前端包放到Nginx的html目录下
- 用文本编辑器批量替换前端js里的默认IP(常见为127.0.0.1或测试域名)
- 修改api.js和socket.js中的连接地址,统一改成http://你的IP:8001
- 配置Nginx反向代理,把/ws路径转发到8001端口,否则WebSocket连不上
- 浏览器访问H5页面,打开开发者工具确认没有跨域报错
关键技巧:WebSocket必须走代理,直接写IP加端口在有些浏览器会被拦截。
沙巴克传奇H5服务端常见问题与修复
搭建过程中最容易卡在数据库连接和WebSocket这两个环节,先按下面顺序排查。
- 卡登录界面:检查db.json密码是否为MySQL实际密码,以及数据库是否允许远程连接
- 进游戏黑屏:F12看network,多半是静态资源路径404,检查Nginx根目录
- 连接超时:服务器防火墙放行8001和8002端口
- 创建角色失败:查看MySQL日志,通常是role表字段缺失或字符集不对
常见误区:很多教程让你改hosts文件,其实H5端不需要,改客户端js里的请求地址才是正解。
后续怎么维护和开服?
服务跑起来后,日常维护主要盯日志和数据库备份。
- 每天定时备份sabak_server数据库,用mysqldump导出
- 查看logs目录下的error.log,排查异常登录和脚本报错
- 修改游戏爆率和经验倍率,在config/game.json里调整对应数值后重启生效
- 开新区时复制一份数据库并改表前缀,避免数据串区
注意事项:正式对外开服前,先把默认GM账号密码改掉,否则后台会被轻易进入。
