You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地运行Laravel项目访问时端口自动递增跳转问题排查

问题根因

端口逐次+1跳转的本质是PHP进程崩溃触发的Laravel开发服务自动重启:

  • 本地启动的php artisan serve依赖PHP内置开发服务器,你当前使用的PHP 7.4.1在Windows平台存在已知PDO扩展崩溃bug,只要执行数据库连接、查询类的PDO操作,就会触发内存错误导致当前服务进程直接异常退出
  • Laravel的serve命令自带异常重启逻辑,检测到8000端口的服务进程终止后,会自动在8001端口拉起新服务,新服务再崩溃就继续往8002端口递增重启,和观察到的现象完全吻合
  • 因为进程是直接崩溃终止,没有走完Laravel的异常上报流程,所以Laravel日志里查不到报错;Apache日志里记录的Parent process exited abruptly就是进程异常退出的直接佐证。
修复方案

按操作成本从低到高排序:

  • 优先升级本地CLI环境的PHP版本:直接把PHP 7.4.1替换为7.4分支的稳定修复版(推荐7.4.33,为7.4系列最终维护版本),这个PDO崩溃bug在PHP 7.4.2及以后的版本就已经被修复,升级后直接重启开发服务即可恢复正常
  • 临时绕过方案:如果暂时不方便升级PHP,可以放弃使用php artisan serve,直接把Laravel项目配置到本地XAMPP的Apache虚拟主机中,通过Apache服务访问项目,绕开存在bug的PHP内置开发服务器
  • 兜底校验:版本升级完成后,核对项目.env文件中的数据库连接配置(主机地址、端口、库名、用户名、密码)和本地数据库服务运行状态,排除配置错误导致的连接异常。
快速验证方法
  • 先在项目根目录执行php -v,确认命令行启动服务用的PHP版本确实是7.4.1,避免和Apache加载的PHP版本混淆
  • 单独写一段最简PDO数据库连接代码用命令行执行,若能复现CLI进程直接退出的现象,即可确认是PHP版本本身的bug
  • 升级PHP后重新启动开发服务,访问带数据库查询的路由,确认不再出现端口跳转即可。

内容的提问来源于stack exchange,提问作者jagadeesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 23:31:03