讲师中心 微信公众号
AI工具推荐 视频效率加速

Workerman为什么无法正常监听指定端口

陌芳姑娘_6194

陌芳姑娘_6194

发布时间:2026-06-29 19:21:25

|

924人浏览过

|

来源于php中文网

原创

Workerman启动后netstat查不到监听端口且报“Connection refused”,主因是监听地址写死为127.0.0.1,须全部改为0.0.0.0并完整重启;其次排查端口占用、防火墙/安全组双层拦截、低权限用户绑定低端口失败及Windows下pcntl扩展缺失问题。

workerman为什么无法正常监听指定端口

Workerman启动后netstat查不到监听端口,telnet测试直接拒绝连接,客户端反复报“Connection refused”,不是代码没写,是进程根本没把端口真正挂上去。

监听地址写死为127.0.0.1

检查所有Worker或Gateway实例的构造参数,比如new Worker('tcp://127.0.0.1:2345')或new Gateway('websocket://127.0.0.1:8080')——这会导致只响应本机回环请求,外部设备发包到服务器真实IP时内核直接丢弃。

必须全局改为0.0.0.0:用new Worker('tcp://0.0.0.0:2345')或new Gateway('websocket://0.0.0.0:8080')。

改完不能只执行php start.php reload,热重载不生效,【必须完整重启】:php start.php stop && php start.php start。

重启后立刻验证:ss -tuln | grep :2345。若输出中仍是127.0.0.1:2345,说明代码未生效或被其他配置覆盖(比如环境变量、配置文件、多Worker实例中某一个仍写死127.0.0.1)。

端口被系统其他进程占用

方法一:用netstat -tulnp | grep :2345(Linux)或netstat -ano | findstr :2345(Windows)查占用进程PID。

方法二:用lsof -i :2345(macOS/Linux),若提示command not found,先yum install -y lsof或apt install -y lsof。

确认是其他服务占用了,就停掉它;如果是Workerman旧进程残留(比如kill -9后pid文件未清理),直接杀进程:kill -9 $(cat /path/to/workerman.pid),再删pid文件。

防火墙或云安全组拦截端口

第一步:在服务器上执行telnet 127.0.0.1 2345——通了不代表外网能连,loopback流量不经过firewalld/云安全组。

第二步:查当前开放端口:sudo firewall-cmd --list-ports(CentOS 7+/AlmaLinux)或sudo ufw status(Ubuntu)。

第三步:临时放行测试:sudo firewall-cmd --add-port=2345/tcp --permanent && sudo firewall-cmd --reload。

第四步:登录阿里云/腾讯云控制台 → 找到对应ECS → 安全组 → 入方向规则 → 添加TCP协议、端口2345、授权对象0.0.0.0/0(测试用)。

注意:安全组和系统防火墙要**双层都放行**,漏一层,连接就卡在半路。

低权限用户尝试绑定1024以下端口

Linux下,普通用户无法绑定80、443等低端口,会静默失败或报Permission denied,Workerman进程可能假死、不报错、也不监听。

验证方式:ps aux | grep start.php看是否真在运行;再tail -f storage/logs/workerman.log查有无权限错误日志。

解决方案只有两个:【要么切root用户启动】,要么把端口改成1024以上(如8080、2345、7272)。

Windows下pcntl扩展缺失或兼容问题

Windows原生不支持pcntl,若你用的是标准workerman而非workerman-for-win,启动时会报Fatal error: Call to undefined function Workerman\Lib\pcntl_signal(),进程直接退出,自然无监听。

正确做法:删掉vendor/workerman/workerman目录,改用composer require workerman/workerman-for-win安装专用版。

装完后别忘了在启动脚本开头加define('GLOBAL_START', true);,否则Win版自动加载机制不触发。

热门AI工具

更多
豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

相关专题

更多
开发工具有哪些
开发工具有哪些

开发工具有:1、集成开发环境IDE;2、版本控制系统VCS;3、自动化构建工具;4、测试工具;5、代码分析工具。本专题为大家提供开发工具有哪些的相关的文章、下载、课程内容,供大家免费下载体验。

2706

2023.08.02

Workerman安装配置教程
Workerman安装配置教程

Workerman安装配置教程专题提供Workerman安装配置、WebSocket开发、TCP通信、异步编程、高并发服务搭建与PHP实时通信开发教程。

186

2026.05.20

Workerman实时通信与长连接开发教程
Workerman实时通信与长连接开发教程

WWorkerman实时通信与长连接开发教程聚合实时通信、聊天室、长连接、消息推送、AI流式输出等Workerman高并发开发内容。

202

2026.05.20

Workerman异步通信与TCP服务器开发
Workerman异步通信与TCP服务器开发

Workerman异步通信与TCP服务器开发专题整理Workerman异步通信、TCP服务、HTTP服务、WebSocket开发与高并发PHP服务器教程。

207

2026.05.20

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

60

2026.10.16

OpenJDK怎么配置Java开发环境
OpenJDK怎么配置Java开发环境

怎样用OpenJDK搭建开发环境?本专题介绍版本选择、下载安装、环境变量配置和编译运行验证,帮助你理清JDK的作用及基本配置流程,并通过简单程序检查环境是否可用,为后续项目开发做好准备。

40

2026.10.16

OpenJDK怎么部署Java应用
OpenJDK怎么部署Java应用

Java项目开发完成后,怎样部署到目标环境并正常运行?本专题介绍OpenJDK应用部署流程,涵盖运行环境准备、版本兼容检查、应用打包、启动参数配置和日志查看,帮助你理清部署前后的操作顺序,减少环境差异造成的运行问题。

40

2026.10.16

Revel框架模板渲染与表单验证
Revel框架模板渲染与表单验证

本专题围绕Revel框架视图层开发,介绍模板语法、变量输出、布局复用、表单提交、参数绑定与验证规则,帮助开发者完成安全规范的页面交互。

20

2026.10.16

Revel框架MVC路由与控制器
Revel框架MVC路由与控制器

本专题聚焦Revel框架MVC核心机制,讲解路由定义、控制器Action、参数绑定、请求响应和反向路由,并结合常见场景梳理接口请求处理流程。

20

2026.10.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Webman中文手册
Webman中文手册

共0课时 | 0人学习

Workerman官方手册
Workerman官方手册

共0课时 | 0人学习

ThinkPHP5.1完全开发手册
ThinkPHP5.1完全开发手册

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn