我参考http://doc2.workerman.net/326160这个文档设置wss。 已经注册了免费证书,开放了4431端口。但是无法连接。 请问: 经过确认,4431端口已经开放,从外网telnet可以访问。确认不是防火墙问题。
但我的php版本是5.5,不清楚是不是这个原因。
我看手册说,如果是微信小程序连接,必须要求php5.6,请问仅是web浏览器连接,是否必须是php5.6版本吗?
请问wss连接失败又错误日志吗?如果有的话,请问在什么位置?
无法连接客户端会有报错,贴下报错。 服务端用debug方式运行,看下服务端报错。
web浏览器不要求php5.6
谢谢大神,经过查看日志,貌似有点眉目了。发现后台连接4431成功了。connection is ok
但是前台js显示有问题,且连接成功率不高、并且很慢。我估计是前台js的设置问题。 我检查下js。
请问ws改成wss后,除了url协议前缀以外,前台的websocket连接方式用进行修改吗?
没有别的修改
@1:有新的回复
walkor大哥还得麻烦你帮小弟看看~。
经过测试和一下午的研究,还是无法连接。偶尔日志中显示 connection is ok。但依然无法进行其他数据传输。 多数时候都无法连接。下面图片是我的服务器状态和wss程序代码。代码顶部use部分可能截图不全,但程序肯定是没有错误的。
在php start.php status中 4431的几个进程,第一次查看,是有值的,但是第二次查看,就都变成N/A了。
补充日志:
connection is ok 有,但是ok之后马上就会close。 不知道是什么情况~~
正常情况下应该是连接成功后,会自动下发一条成功消息。现在也没有下发。
PHP openSSL 扩展版本:
OpenSSL support => enabled OpenSSL Library Version => OpenSSL 1.0.2k-fips 26 Jan 2017 OpenSSL Header Version => OpenSSL 1.0.2k-fips 26 Jan 2017
服务端用debug方式运行,看下服务端报错
这个是debug模式的信息。 连接成功显示 connect is ok。但是马上就断开连接。 没有任何信息返回。正常情况下,连接成功,会有消息返回。
有过测试 如果证书文件正确,则会自动close。 如果证书文件错误,则不会close。
以下图片是证书路径错误嗲的显示结果:
4431端口的进程设置为1,然后重启workerman。
php start.php status 找到4431端口的进程pid。 运行命令 strace -p pid 然后连。 当php start.php status里看到这个进程busy的时候,截图下strace的结果
walkor大哥,这是strace数据。一直在疯狂输出。所有的数据都一样。所以我截了一部分。
这个问题没有遇见过。看下是否更改了workerman源码,重新下载一份workerman试下。 如果还有问题就用nginx代理wss,worekrman手册上有。
源码核心没有改过,但是一些小地方修改过。我下一份原版试试。
请问现在的日志是什么情况?能大致告诉我一下吗?我看不太懂~
有探测到连接上有数据发来,但是没调用read去读取数据
换了原版有错误日志了!!
local_cert 没设置,或者对应的文件不存在,建议你写死试下,不要用变量传递
无法连接客户端会有报错,贴下报错。
服务端用debug方式运行,看下服务端报错。
web浏览器不要求php5.6
谢谢大神,经过查看日志,貌似有点眉目了。发现后台连接4431成功了。connection is ok
但是前台js显示有问题,且连接成功率不高、并且很慢。我估计是前台js的设置问题。
我检查下js。
请问ws改成wss后,除了url协议前缀以外,前台的websocket连接方式用进行修改吗?
没有别的修改
@1:有新的回复
walkor大哥还得麻烦你帮小弟看看~。
经过测试和一下午的研究,还是无法连接。偶尔日志中显示 connection is ok。但依然无法进行其他数据传输。
多数时候都无法连接。下面图片是我的服务器状态和wss程序代码。代码顶部use部分可能截图不全,但程序肯定是没有错误的。
在php start.php status中
4431的几个进程,第一次查看,是有值的,但是第二次查看,就都变成N/A了。
补充日志:
connection is ok 有,但是ok之后马上就会close。
不知道是什么情况~~
正常情况下应该是连接成功后,会自动下发一条成功消息。现在也没有下发。
PHP openSSL 扩展版本:
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.2k-fips 26 Jan 2017
OpenSSL Header Version => OpenSSL 1.0.2k-fips 26 Jan 2017
服务端用debug方式运行,看下服务端报错
这个是debug模式的信息。
连接成功显示 connect is ok。但是马上就断开连接。
没有任何信息返回。正常情况下,连接成功,会有消息返回。
有过测试
如果证书文件正确,则会自动close。
如果证书文件错误,则不会close。
以下图片是证书路径错误嗲的显示结果:
4431端口的进程设置为1,然后重启workerman。
php start.php status 找到4431端口的进程pid。
运行命令
strace -p pid
然后连。
当php start.php status里看到这个进程busy的时候,截图下strace的结果
walkor大哥,这是strace数据。一直在疯狂输出。所有的数据都一样。所以我截了一部分。
这个问题没有遇见过。看下是否更改了workerman源码,重新下载一份workerman试下。
如果还有问题就用nginx代理wss,worekrman手册上有。
源码核心没有改过,但是一些小地方修改过。我下一份原版试试。
请问现在的日志是什么情况?能大致告诉我一下吗?我看不太懂~
有探测到连接上有数据发来,但是没调用read去读取数据
换了原版有错误日志了!!
local_cert 没设置,或者对应的文件不存在,建议你写死试下,不要用变量传递