牛小天搭建流程

起因:在被隔离的最后一周内,认识的一个朋友给我打电话,说我会做 app 不,想让我弄个 app,他说他有个朋友想做,报价 10W,然后给我微信发了一个二维码,我打开之后发现是个游戏,可以在线棋牌,我说这其实是微信 h5 页面,不用做 app,我研究下吧,然后我就开始找免费服务器做实验,因为我阿里云的服务器到期了,刚把后台跑起来,正在纠结微信服务号我没有的问题,那边说朋友很急,因为我不能承诺百分之百能弄好,我说那你让报价 10W 的那个人做吧,我这边自己研究研究就行了,回来我们自己玩。
我也查了一些资料,其实还有有灰色性质,我就全当研究了,趁着周六休息,我想写下来我搭建的流程和遇到的问题。把他当个研究技术的学习过程。

在微信打开效果
我给自己加了9999张房卡

后台登陆界面
因为我没有域名,所以我用的公网 ip,这里就不暴露地址啦。

这个是登陆界面

用户页面,可以查看注册用户的信息

给特定用户赠送房卡

控制他下一次是什么牌

编辑个人信息,可以让它透视玩家的牌

看完之后可以看出这种线上棋牌性质的是不靠谱的,他可以控制发牌,可以让跟你玩的玩家拥有透视功能,你觉得自己是好牌,是管理员在控制你的输赢。

好,接下来聊搭建

# 搭建过程

1. 服务器安装系统选择宝塔
安装操作系统
2. 安装好之后,会提示 “CentOS 内置宝塔面板的系统,安装完毕后,您可以通过访问 http:// 你自己的 ip:8888 来进行初始化服务器

进去后会弹出安装软件明细:

  • Nginx 1.14
  • Mysql 5.6
  • phpMyAdmin 4.4
  • Php 7.2

点击安装

  1. 把数据库文件中的 nxt.sql 用安装的 phpMyAdmin 进行导入操作
    把数据进行导入操作

注意:导入之前先进行创建数据库 nxt

4. 把代码导入服务器之后,进行修改配置文件的操作

修改文件 data/conf/db.php

1
2
3
4
5
'DB_TYPE' => 'mysql',
'DB_HOST' => '127.0.0.1',
'DB_NAME' => '数据库名',
'DB_USER' => '数据库用户',
'DB_PWD' => '数据库密码'

修改文件 auto/php54n/config.php

1
2
3
4
5
6
7
8
$serverdk='6853';
$host= '127.0.0.1';
$username='数据库用户';
$password='数据库密码';
$dbname='数据库名';
$charset = 'utf8mb4';
$machine_http = 'http://127.0.0.1:5432/';
$url='替换你的域名';(也可以是ip)

5. 启动游戏服务
在 auto / 下

1
2
3
php server.php start -d

./run.sh

6. 配置文件修改之后,登录后台 http:// 域名 (或者 ip)/admin,就进入我最开始发的截图后台界面了,后台默认帐号 admin 默认密码 www.cxnd.com,当然你可以去 phpMyAdmin 在 jz_users 表中把原来默认密码修改为 ###4a48b2e4f7d2d0931e3c31e9ed3c0b9c 这样初始密码就是 123456789,其实就是一种加密算法

7. 进入 https://mp.weixin.qq.com,登录微信公众平台,在开发 -----> 基本配置获取开发者 ID (AppID) 和开发者密码 (AppSecret),并设置微信 IP 白名单,然后在设置 -----> 公众号设置 -----> 功能设置,配置你的业务域名,JS 接口安全域名,网页授权域名。然后进入网站后台填写微信 appid 和微信 key,填完之后,点击保存按钮,然后再点击微信 access_token 的获取按钮,获取他的 access_token。这里就全部配置完成了。

微信前台地址 http:// 域名 /

# 遇到的问题和需要注意的地方

1. 大厅进去之后,或者邀请人加入房间的地址,提示系统发生错误
这种一般就是伪静态的问题,在宝塔后台左边菜单栏选择网站,在你添加的站点右边点击设置,点击伪静态 选择 thinkphp,配置如下:
配置伪静态

1
2
3
4
5
6
7
8
location ^~ /jf/ {  
rewrite ^/jf/nl/niuxiaotian /portal/index/room.html?room=$1 last;
}
location / {
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$1 last; break;
}
}

2. 登录后台 http:// 域名 (或者 ip)/admin,输入账号密码提示 “Not Found”
这一般是账号和密码的错误,一般是数据库没有配置好
数据库信息

3. 后台配置完公众号相关信息打开提示微信拦截或者打开是别人的公众号或者打开一直提示公众号配置错误信息,这是源码被人改了公众号转发登录,公众号转发登录的好处是一个公众号可以用到无数个台子,并且网站域名死了不用去公众号修改域名换域名很方便。
打开 application/Common/Controller->HomebaseController.class.php, 找到这一句

1
$baseurl=urlencode('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']);

然后在他下面是 url=‘’……… 将 url = 这一行替换成下面

1
$url='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$this->extract['weixin_appid'].'&redirect_uri='.$baseurl.'&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect';

以上,去吃饭。