最近买了个服务器,准备学习一些开发,安装的是ubuntu 12.04系统,准备先把pomelo官方的chatofpomelo项目调试运行起来,参考网上教程,并记录调试过程。
安装python2.7,使用sudo apt-get install python2.7命令安装,一定要是2.7版本的。
安装编译工具,执行这几个命令
sudo apt-get install build-essential
sudo apt-get install gcc
sudo apt-get install g++
不过我使用的是云服务器,执行这个命令的时候提示的是都已经是最新版本。去官网下载linux版本的nodejs ,我下载下来的文件是node-v0.10.29-linux-x86.tar.gz(注意不要下载最新版本,就是目前的0.12.2版本,已测试过会有异常,0.10.29是我测试的版本,其他版本情况不明)这个已经是编译过可以直接使用的文件,使用ftp上传到服务器,ftp的配置可上网查看教程,有很多
使用tar -zxf node-v0.10.29-linux-x86.tar.gz解压文件,这时进到解压之后的文件夹的bin目录下,就已经能使用./node -v查看版本号了,但不是全局的,执行下面的命令设置成全局。
ln -s /usr/local/node-v0.10.29-linux-x86/bin/node /usr/local/bin/node
ln -s /usr/local/node-v0.10.29-linux-x86/bin/npm /usr/local/bin/npm
前面的/usr/local/node-v0.10.29-linux-x86是我解压之后的路径,现在可以在其他文件夹下都能用node -v查看版本号的,说明nodejs已经安装成功了。使用npm install pomelo -g 安装pomelo,如果试了多次都无法安装成功,可以使用npm install -g cnpm –registry=http://r.cnpmjs.org安装cnpm,然后再使用
cnpm install pomelo -g安装,可能是因为国内npm不稳定,经常下载不了。安装完成后执行pomelo –version 出现版本号说明已经安装成功了。下载官方chatofpomelo-websocket-master.rar,这里我是在自己电脑上解压后用7-zip重新打包成.tar.gz的格式再上传到服务器解压处理的,解压得到chatofpomelo-websocket-master文件夹,
打开game-server/package.json文件,修改pomelo版本为1.1.6,crc版本为0.3.0,退到game-server下执行sh npm-install.sh安装
注1:这里使用默认版本会出现crc校验后是空的情况,导致找不到host的问题。
注2:crc已经装了新版本的可以手动重新安装,执行
npm remove crc
npm install crc@0.3.0 -gd由于是在外网服务器上运行,下面还需要修改配置,打开文件夹下game-server\config\services.json,里面分了development,和production两组结构一样的数据,每个下面又有connector,chat和gate三组数据,其中connector,和chat下都有三条数据,gate是一条数据,其实都是对应的相应的服务器线程,这里只要把connector中host的地址改成云服务器的外网ip就可以了,其他不用动,具体为什么涉及到pomelo的工作原理,有时间再更新说明(本机测试忽略次步骤)。
进入 game-server文件夹,执行pomelo start启动后台服务器
进入web-server文件夹,执行node app.js启动web客户端
执行之后就不要用ctrl+c退出,我是开了两个xshell远程过去操作的。最后打开浏览器,输入http://服务器外网ip:3001就可以登录测试了。
下面是web和pomelo-cocos2dxchat互相通讯的运行截图