PhpStudy默认使用80和3306端口,不监听3000端口;若提示3000被占用,实为Node.js等前端服务占用,需用netstat和tasklist查PID并结束进程,或改用8080等低冲突端口替代。

PhpStudy 默认使用 80(Apache)和 3306(MySQL)端口,但如果你遇到“3000 端口被占用”,说明当前有其他程序(比如 Node.js 服务、VS Code Live Server、另一套 PHP 环境或前端开发工具)正在监听 3000 端口——而 PhpStudy 本身**并不默认监听 3000 端口**。所以问题本质不是 PhpStudy 占用了 3000,而是你试图在 PhpStudy 环境中运行某个依赖 3000 端口的服务(例如 Vue/React 开发服务器),或误将 PhpStudy 配置成了 3000。
确认是否真由 PhpStudy 引起
先排查 3000 端口实际被谁占了:
- 打开命令提示符(管理员权限),执行:
netstat -ano | findstr :3000 - 记下输出中的 PID(最后一列数字)
- 再执行:
tasklist | findstr "PID号"(把 PID 号替换成上一步查到的数字) - 看进程名是不是 httpd.exe、phpstudy.exe、node.exe 或 chrome.exe 等——如果是 node 或 npm,基本可确定是前端项目启动的本地服务,和 PhpStudy 无关
如果你确需让 PhpStudy 的 Apache 监听 3000 端口
注意:不推荐长期用 3000,因它常被前端工具默认占用;如仅临时调试且确认空闲,可按以下操作修改 Apache:
- 打开 PhpStudy → 【其他选项菜单】→ 【配置文件】→ 【httpd.conf】
- 查找两处关键配置:
– 找到 Listen 80,改为 Listen 3000
– 找到 ServerName localhost:80,改为 ServerName localhost:3000(若该行不存在,手动添加一行) - 保存文件,返回 PhpStudy 主界面,点击【重启】Apache
- 访问 http://localhost:3000 测试是否生效
如果你只是想避开 3000 冲突,更建议换其他端口
选一个低冲突、易记的端口(如 8080、8000、8888),比硬抢 3000 更稳妥:
立即学习“PHP免费学习笔记(深入)”;
- Apache 改为 Listen 8080 + ServerName localhost:8080
- MySQL 若也需改(比如原 3306 被占),可在 PhpStudy 主界面 → 【管理】→ 【高级】→ 【端口设置】中把 MySQL 改为 3307,并同步更新 PHP 代码里的
mysqli_connect()或 PDO 连接字符串中的端口号 - 改完务必重启对应服务,否则配置不生效
补充:ThinkPHP 或纯 PHP 内置服务器不走 PhpStudy
如果你用的是 php -S localhost:3000 启动 ThinkPHP 或原生 PHP 服务,那它完全独立于 PhpStudy 的 Apache,此时:
- 不需要动 PhpStudy 配置
- 直接换端口即可,例如:
php -S localhost:8000 public/router.php - 确保该命令在项目根目录执行,且 public/router.php 存在



















