workerman無法socket怎么辦

workerman無法socket怎么辦

workerman無法socket怎么辦?

workerman是一款純PHP開發的開源高性能的PHP socket 服務器框架。被廣泛的用于手機app、手游服務端、網絡游戲服務器、聊天室服務器、硬件通訊服務器、智能家居、車聯網、物聯網等領域的開發。但是在配置workerman情況下,不免有些意想不到的錯誤,下面小編整理網上資料并整合自身遇到的問題,給出以下幾種常用的解決方案。

推薦:Workerman

現象1

啟動后報錯類似如下:

php?start.php?start PHP?Warning:??stream_socket_server():?unable?to?connect?to?tcp://xx.xx.xx.xx:xxxx?(Address?already?in?use)?in?/home/workerman-chat/Workerman/Worker.php?on?line?xxxx

關鍵字: Address already in use

失敗原因:

端口被占用,無法啟動。

可以通過命令netstat -anp | grep 端口號來找出哪個程序占用了端口。

然后停止對應的程序釋放端口解決。

如果不能停止對應端口的程序,可以通過更換workerman的端口解決。

如果是Workerman占用的端口,又無法通過stop命令停止(一般是丟失pid文件或者主進程被開發者kill了導致),可以通過運行以下兩個命令殺死Workerman進程。

killall?php ps?aux|grep?WorkerMan|awk?'{print?$2}'|xargs?kill?-9

現象2

啟動后報錯類似如下:

PHP?Warning:??stream_socket_server():?unable?to?connect?to?tcp://xx.xx.xx.xx:xxx?(Cannot?assign?requested?address)?in?/home/GatewayWorker/Workerman/Worker.php?on?line?xxxx

關鍵字:Cannot assign requested address

失敗原因:

啟動腳本ip參數寫錯,不是本機ip,請填寫本機ip機或者填寫 0.0.0.0(表示監聽本機所有ip)即可解決。

提示:Linux系統可以通過命令 ifconfig查看本機所有網卡ip。

如果您是騰訊云用戶,注意您的公網ip實際是代理服務器ip,公網ip并不屬于你的服務器,所以無法通過公網ip綁定,但是可以通過0.0.0.0來綁定。

現象3

啟動后報錯類似如下:

Waring?stream_socket_server?has?been?disabled?for?security?reasons?in?...

失敗原因:

stream_socket_server 函數被php.ini禁用

解決方法

1、運行php –ini 找到php.ini文件

2、打開php.ini找到disable_functions一項,將stream_socket_server禁用項刪掉

現象4

啟動后報錯類似如下:

PHP?Warning:??stream_socket_server():?unable?to?connect?to?tcp://0.0.0.0:xxx?(Permission?denied)

失敗原因

linux下監聽端口如果小于1024,需要root權限。

解決辦法

使用大于1024的端口或者使用root用戶啟動服務。

現象5

啟動后報錯類似如下:

WebSocket?connection?to?'ws://x.x.x.x:2346/'?failed:?Error?in?connection?establishment:net::ERR_NAME_NOT_TIMED_OUT

失敗原因

服務器防火墻擋住了設置的端口,這里于2346為例。

解決辦法

進入Linux vim編輯服務器防火墻文件,添加你需要開發的服務器端口保存后重啟防火墻。

[root@iZwz9xxxxxxxxxxxxxxxxxx conf]# iptables -nvl? #查看允許訪問的端口

[root@iZwz9xxxxxxxxxxxxxxxxxx conf]# vim /etc/sysconfig/iptables? ?#編輯

[root@iZwz9xxxxxxxxxxxxxxxxxx conf]# /etc/init.d/iptables restart? #重啟

workerman無法socket怎么辦

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊14 分享