使用laravels可能遇到的小小坑
前段时间学习使用 laravels 差点把心态搞蹦了,还是吃了没有仔细看文档亏,所以刚接触 laravels 的小伙伴一定要仔细看文档呀
(都是血的教训)
一.Class Swoole does not exist#
说说这遇到第一个问题吧。报这个错的原因是因为 Laravels 中的 swoole 是以 cli 模式启动的 Http_Server 代替了 FPM, 在投递任务,触发异步时间都会调用 app('swoole')
, 从 Laravel容器
中获取 Swoole\http\server
实例。只有在 LaravelS
启动时,才会注入这个实例到容器中,所以一旦脱离 LaravelS
环境,就可能会报 Class Swoole does not exist
,这个时候你需要检查你的 Apache 或者 Nginx 的配置文件
二.WebSocket 无法连接#
1. 确认安全组是否放行了端口
2. 确定地址是否正确,后面是否有 path 部分(Http 和 WebSocket 共存 Nginx 通过 location 区分,按照文档中的配置,你需要在路径后加上 /ws
)
3. 以上都确认无误,按照文档步骤,还是无法连接 websocket
报错为 WebSocket opening handshake timed out
文档中启用 WebSocket
文件 WebSocketService
里 onHandShake
方法是被注释了的,你需要启用这个方法并且在方法里自定义握手,完成后重启 laravels 就大功告成啦
以上就是我使用 laravels 遇到问题,若有错误还请大佬指导
,也可以说说你在使用的时候遇到的坑大家一起交流 总结一下就是仔细看文档啊朋友们
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: