【咸鱼之王】H5修复版:从零到一,宝塔面板+Nginx+Mysql一站式部署实战

张开发
2026/4/13 12:31:23 15 分钟阅读

分享文章

【咸鱼之王】H5修复版:从零到一,宝塔面板+Nginx+Mysql一站式部署实战
1. 环境准备与宝塔面板安装第一次接触H5游戏服务端搭建的朋友可能会觉得无从下手但其实只要跟着步骤走用宝塔面板可以省去80%的配置工作。我去年帮朋友部署过三个类似的H5游戏实测宝塔面板是最适合新手的方案。先确认你的CentOS 7.6系统已经完成基础配置确保网络连接正常ping www.baidu.com测试关闭SELinuxsed -i s/SELINUXenforcing/SELINUXdisabled/g /etc/selinux/config更新系统yum update -y reboot安装宝塔面板只需要一行命令yum install -y wget wget -O install_panel.sh http://download.bt.cn/install/install_6.0.sh sh install_panel.sh安装过程大约5-10分钟完成后你会看到控制台输出面板地址和初始账号密码。这里有个小技巧用手机拍下这个信息避免切换窗口时丢失。我第一次搭建时就因为忘记保存不得不重置面板密码。常见问题排查如果安装卡住可能是网络问题试试更换软件源curl -sSL https://raw.githubusercontent.com/waynegongcn/BT_Panel_Tools/main/auto_fix.sh | bash云服务器记得在安全组开放8888端口本地虚拟机搭建建议使用NAT模式避免桥接模式的网络冲突2. 基础软件安装配置宝塔面板安装完成后我们需要在软件商店安装以下核心组件Nginx 1.18选择编译安装兼容性更好MySQL 5.7注意设置root密码为123456PHP 7.2安装后记得删除默认的phpinfo文件MongoDB 4.0.10游戏数据存储用Redis 6.2.18缓存加速用这里有个容易踩坑的地方MySQL安装后默认只监听本地端口需要修改配置文件sed -i s/bind-address 127.0.0.1/#bind-address 127.0.0.1/g /etc/my.cnf systemctl restart mysqld防火墙配置建议三种方案选其一彻底关闭适合测试环境systemctl stop firewalld systemctl disable firewalld宝塔面板安全页面放行端口只开放必要端口85,82,3306,6379,27017我个人的经验是第一次搭建时可以先彻底关闭防火墙等所有服务调通后再逐步开放端口。曾经有个项目因为防火墙问题排查了整整两天后来发现是MongoDB的27017端口被拦截。3. 游戏源码部署源码上传有两个推荐方案使用宝塔面板的文件管理器直接上传ZIP包用Xshell的rz命令上传需要先安装lrzszyum install -y lrzsz解压时要注意目录结构cd / unzip home.zip chmod -R 777 /home/proj环境配置是关键步骤这里需要安装OpenRestycd /home/proj wget https://openresty.org/download/openresty-1.19.3.1.tar.gz tar -zxvf openresty-1.19.3.1.tar.gz cd openresty-1.19.3.1 ./configure --with-pcre-jit --with-ipv6 make make install配置环境变量时容易出错建议直接复制以下命令echo PATH/usr/local/openresty/bin:/usr/local/openresty/nginx/sbin:$PATH ~/.bash_profile echo export LC_ALLen_US.UTF-8 ~/.bash_profile echo export PATH ~/.bash_profile source ~/.bash_profile数据库初始化要注意字符集CREATE DATABASE sanguo DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; USE sanguo; SOURCE /home/sql/sanguo.sql;4. 服务配置与启动IP替换是最容易出错的环节建议先用grep命令确认要修改的文件grep -rl 192.168.200.99 /home/proj /www/wwwroot然后用sed命令批量替换记得把192.168.66.128改成你的实际IPsed -i s/192.168.200.99/192.168.66.128/g grep -rl 192.168.200.99 /home/proj sed -i s/192.168.200.99/192.168.66.128/g grep -rl 192.168.200.99 /www/wwwroot网站创建要注意两个关键点主站点端口85目录/home/proj/goserver/admin/assets/web/dist伪静态选择thinkphp游戏站点端口82目录/www/wwwroot/game关闭防跨站攻击服务启动顺序很重要# 在/home/proj/apiserver目录 nginx -p pwd -c conf/nginx.conf # 在/home/proj/skynet目录 sh getkey.sh ./skynet ../loginserver/prodconfig ./skynet ../gameserver/prodconfig # 在/home/proj/goserver目录 nohup ./mygo 管理后台访问地址http://你的IP:85/#/login 默认账号admin/admin 开服操作路径游戏管理→区服配置→添加→保存→开服5. 客户端适配与调试安卓客户端修改需要用到apktool工具具体步骤反编译APKjava -jar apktool.jar d original.apk -o decoded修改IP地址三个关键文件assets/main/index.*.jsassets/resources/...jsonsmali_classes4/...smali重新打包java -jar apktool.jar b decoded -o new.apk真机安装需要签名keytool -genkey -v -keystore my.keystore -alias alias_name -keyalg RSA -validity 10000 jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my.keystore new.apk alias_name常见问题解决方案游戏卡加载检查Nginx的gzip配置是否开启数据库连接失败确认MySQL用户权限GRANT ALL ON.TO root%后台无法登录清理浏览器缓存或尝试无痕模式邮件发送失败检查Python服务的端口是否正常监听最后提醒一点游戏运营涉及法律风险本教程仅供学习研究使用。建议在测试完成后及时清理环境或者转为本地局域网娱乐使用。如果遇到技术问题可以查看宝塔面板的实时日志/www/wwwlogs目录和游戏服务日志/home/proj/skynet/logs目录大多数错误都能从日志中找到线索。

更多文章