程序是用聊天室的代码修改的,数据库使用mysql,配置与手册上相似(在config中使用DB类)。
在连接到gateway的时候,如果客户端连接使用ws = new WebSocket("ws://127.0.0.1:7272");并在本地开启gateway服务,则可以正常操作数据库。
但是同样的代码拷贝到阿里云ESC上,并在上面开启gateway,客户端连接改成ws = new WebSocket("ws://阿里云域名:7272");测试后发现可以连接到阿里云的gateway服务(登录与心跳均正常),但是数据库操作全部无效。
除了客户端的代码改成了连接到阿里云的gateway上了,其他代码一句没动,但是数据库就出现问题了,请问这是为什么?另外我不知道该如何进行调试,看不到错误代码。望告知,十分感谢!
启动的时候不加-d,就是以调试模式启动,可以看到具体的报错。估计是没装pdo_mysql扩展。
另外通过php start.php status也能看到服务统计信息,也能看到是有进程异常退出。
workerman具体调试方法参见手册:http://doc3.workerman.net/debug/base.html
status 命令说明参见手册:http://doc3.workerman.net/advanced/status.html
感谢walkor的及时回复!
pde_mysql扩展已经安装了。阿里云使用php start.php start会看到下面的错误。但是奇怪的是在本地上运行就不会有这个错误(完全相同的项目文件)请问我是不是要更改什么路径之类的东西?
我的DB配置文件就如手册中说的,放在Applications/Chat/Config/Db.php
Db.php的内容也和手册差不多
正常都能加载到的,再检查下文件是否存在、大小写是否正确。可以在Autoloader.php里面打印下加载的文件路径看看加载到哪里去了
能加载,无错使用。 检查Server环境 和 Model的安装
楼主解决了吗?我也碰见这个问题,就是找不见这个文件
PHP Fatal error: Class 'Config\Db' not found in E:\work\GatewayWorker\vendor\wo
rkerman\gateway-worker-for-win\src\Lib\Db.php on line 42
-mysql.html for detail