解决 Laravel 开发服务器 300 秒自动停止问题

解决 Laravel 开发服务器 300 秒自动停止问题

当使用 php artisan serve 启动 Laravel 开发服务器时,若遇到 300 秒后自动停止并报告“Maximum execution time exceeded”错误,通常是 PHP CLI 的 max_execution_time 配置限制所致。本文将指导您通过修改 php.ini 文件来延长或解除此限制,确保开发服务器稳定运行。

引言

laravel 的 php artisan serve 命令提供了一个轻量级的开发服务器,方便开发者快速启动项目进行调试。然而,部分用户可能会遇到开发服务器在运行约 300 秒(5 分钟)后突然停止,并抛出“maximum execution time of 300 seconds exceeded”的致命错误。尽管错误发生后,通过浏览器访问项目可能仍然正常,但这会给开发过程带来不便,因为 artisan serve 命令本身不再监控文件变化或提供实时日志输出。

这个问题的根本原因在于 php artisan serve 命令实际上是一个由 PHP CLI 进程启动并持续运行的脚本。PHP 默认对脚本的执行时间有限制,即 max_execution_time 配置项。当这个 CLI 进程(具体是 IlluminateFoundationConsoleServeCommand.php 中的循环)运行时间超过预设的 max_execution_time 时,PHP 就会强制终止该进程,从而导致开发服务器的“停止”。

问题现象与诊断

典型的错误输出如下所示:

Starting Laravel development server: http://127.0.0.1:8000[Sun Oct 31 15:23:52 2021] PHP 7.4.25 Development Server (http://127.0.0.1:8000) startedPHP Fatal error: Maximum execution time of 300 seconds exceeded in F:projectvendorlaravelframeworksrcIlluminateFoundationConsoleServeCommand.php on line 59SymfonyComponentErrorHandlerErrorFatalErrorMaximum execution time of 300 seconds exceededat F:projectvendorlaravelframeworksrcIlluminateFoundationConsoleServeCommand.php:5955▕ : now()->addDays(30)->getTimestamp();56▕57▕ $process = $this->startProcess($hasEnvironment);58▕➜ 59▕ while ($process->isRunning()) {60▕ if ($hasEnvironment) {61▕ clearstatcache(false, $environmentFile);62▕ }63▕

从错误信息中可以清晰地看到 Maximum execution time of 300 seconds exceeded,并且错误发生在 ServeCommand.php 的一个 while 循环中,这个循环负责保持开发服务器进程的运行和监控。这进一步证实了是 PHP CLI 的执行时间限制导致的问题。

解决方案:修改 PHP CLI 配置

解决此问题的核心是调整 PHP CLI 的 max_execution_time 配置。

1. 定位正确的 php.ini 文件

PHP 在不同环境下(例如 Web 服务器和命令行接口)可能使用不同的 php.ini 配置文件。我们需要修改的是用于 CLI 的 php.ini 文件。您可以通过在命令行中运行以下命令来查找 PHP CLI 当前使用的 php.ini 文件路径:

php --ini

该命令的输出会列出 PHP 扫描 php.ini 的路径以及实际加载的配置文件。例如:

Configuration File (php.ini) Path: C:phpLoaded Configuration File:         C:phpphp.iniScan for additional .ini files in: (none)Additional .ini files parsed:      (none)

请记下 Loaded Configuration File 对应的路径。

2. 编辑 php.ini 文件

使用文本编辑器(如 VS Code, Notepad++, Sublime Text 等)打开上一步找到的 php.ini 文件。

在文件中搜索 max_execution_time。您可能会找到类似下面的一行:

max_execution_time = 300

将其值修改为 0,表示无限制,或者一个足够大的数值(例如 3600 秒,即 1 小时)。对于开发环境,设置为 0 通常是安全的且推荐的做法,因为它允许 artisan serve 命令无限期运行。

max_execution_time = 0

保存 php.ini 文件。

3. 重启开发服务器

完成 php.ini 的修改并保存后,您需要关闭当前运行的 php artisan serve 进程(如果它还在运行),然后重新启动它:

php artisan serve

现在,您的 Laravel 开发服务器应该能够持续运行,不再受 300 秒执行时间限制的影响。

注意事项

CLI 与 Web 服务器的 php.ini 区别: 务必确认您修改的是 PHP CLI 使用的 php.ini 文件,而不是您的 Web 服务器(如 Nginx 或 Apache)所使用的 php.ini。Web 服务器的 php.ini 通常位于不同的路径,并且修改其中的 max_execution_time 会影响所有 Web 请求的执行时间,这在生产环境中需要谨慎处理。对于 php artisan serve 而言,我们只关心 CLI 的配置。max_execution_time = 0 的含义: 将 max_execution_time 设置为 0 意味着 PHP 脚本可以无限期运行。在开发环境中,对于像 php artisan serve 这种需要长时间运行的 CLI 进程,这是一个合理且方便的设置。但在生产环境中,对于处理 Web 请求的 PHP 脚本,通常会设置一个合理的上限,以防止恶意或错误脚本长时间占用服务器资源。环境差异: 不同操作系统或 PHP 安装方式(如 XAMPP, WAMP, MAMP, Docker, Homebrew 等)可能会导致 php.ini 的位置有所不同。始终通过 php –ini 命令来定位是最可靠的方法。

总结

当 Laravel 开发服务器在 300 秒后自动停止时,这通常是 PHP CLI 的 max_execution_time 配置限制所导致。通过简单地定位并修改 PHP CLI 的 php.ini 文件中的 max_execution_time 配置项,将其值设置为 0 或一个更大的数值,即可彻底解决此问题,确保您的开发服务器能够稳定、持续地运行,为您的 Laravel 开发工作提供一个顺畅的环境。

以上就是解决 Laravel 开发服务器 300 秒自动停止问题的详细内容,更多请关注php中文网其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1272249.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
基于CodeIgniter和jQuery实现动态表格数据筛选教程
上一篇 2025年12月10日 14:36:18
Laravel Paginator 高效使用指南:解决过滤查询的分页难题
下一篇 2025年12月10日 14:37:08

相关推荐

  • QQ空间访问报错如何解决

    QQ空间访问报错如何解决QQ空间访问报错如何解决QQ空间访问报错如何解决QQ空间访问报错如何解决

    网络问题、浏览器兼容性、账号异常或系统维护是QQ空间访问报错的常见原因。2. 可依次检查网络连接、切换网络模式、更换浏览器或清理缓存、确认账号状态及查看系统维护公告。3. 若问题持续,建议联系腾讯客服反馈错误信息以获取支持。 QQ空间访问报错通常由网络问题、浏览器兼容性、账号异常或系统维护等原因引起…

    2026年9月29日 • 用户投稿
    000
  • DeepSeek本地部署如何验证安装完整性 DeepSeek文件校验与数字证书检查指南

    DeepSeek本地部署如何验证安装完整性 DeepSeek文件校验与数字证书检查指南DeepSeek本地部署如何验证安装完整性 DeepSeek文件校验与数字证书检查指南DeepSeek本地部署如何验证安装完整性 DeepSeek文件校验与数字证书检查指南DeepSeek本地部署如何验证安装完整性 DeepSeek文件校验与数字证书检查指南

    对于本地部署的DeepSeek,确保安装过程的完整性和文件的未被篡改是至关重要的。本文将指导用户如何通过文件校验和数字证书检查这两种方法,验证DeepSeek本地部署文件的安装完整性。我们将详细讲解操作步骤,帮助用户掌握必要的验证技能,确保部署环境的安全与可靠。 ☞☞☞AI 智能聊天, 问答助手, …

    2026年9月29日 • 用户投稿
    000
  • vivo浏览器在线版网页入口 vivo浏览器在线版网页地址

    vivo浏览器在线版网页入口 vivo浏览器在线版网页地址vivo浏览器在线版网页入口 vivo浏览器在线版网页地址vivo浏览器在线版网页入口 vivo浏览器在线版网页地址vivo浏览器在线版网页入口 vivo浏览器在线版网页地址

    vivo浏览器在线版网页入口为http://www.vivo.com.cn,用户可通过该官网访问聚合新闻、视频、小说等内容,享受个性化推荐、多端同步、高效搜索及简洁流畅的浏览体验。 vivo浏览器在线版网页入口在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来vivo浏览器在线版网页地址,感…

    2026年9月29日 • 用户投稿
    000
  • 使用Java在Vulkan中加载GLSL着色器

    使用Java在Vulkan中加载GLSL着色器使用Java在Vulkan中加载GLSL着色器使用Java在Vulkan中加载GLSL着色器使用Java在Vulkan中加载GLSL着色器

    本文介绍了如何在Java中使用Vulkan API加载和使用GLSL着色器。核心步骤是将GLSL着色器编译为SPIR-V二进制格式,然后加载到Vulkan管线中。通过使用ShaderSPIRVUtils等工具,可以简化编译过程,并确保着色器代码在Vulkan环境中正确执行。本文将提供详细的步骤和示例…

    2026年9月29日 • 用户投稿
    000
  • DeepSeek跨平台安装遇到中文路径问题 DeepSeek中文目录兼容性处理方案

    DeepSeek跨平台安装遇到中文路径问题 DeepSeek中文目录兼容性处理方案DeepSeek跨平台安装遇到中文路径问题 DeepSeek中文目录兼容性处理方案DeepSeek跨平台安装遇到中文路径问题 DeepSeek中文目录兼容性处理方案DeepSeek跨平台安装遇到中文路径问题 DeepSeek中文目录兼容性处理方案

    在使用 DeepSeek 进行跨平台安装或部署时,用户有时会遇到与中文路径相关的兼容性问题,这可能导致安装失败或程序运行时出现异常。本文旨在阐述这一问题的常见原因,并提供一套实用的中文目录兼容性处理方案,指导用户通过清晰的步骤解决此问题,确保 DeepSeek 能够顺利安装和运行。 ☞☞☞AI 智能…

    2026年9月29日 • 用户投稿
    000
  • 如何在SublimeText中设置代码自动补全?提升编码效率的配置技巧

    如何在SublimeText中设置代码自动补全?提升编码效率的配置技巧如何在SublimeText中设置代码自动补全?提升编码效率的配置技巧如何在SublimeText中设置代码自动补全?提升编码效率的配置技巧如何在SublimeText中设置代码自动补全?提升编码效率的配置技巧

    Sublime Text的内置自动补全功能有限,需结合第三方插件如Anaconda或LSP实现智能补全。首先启用auto_complete并配置触发条件,再通过Package Control安装语言专属插件,如Python用Anaconda或LSP-pyright,JavaScript用TypeSc…

    2026年9月29日 • 用户投稿
    000
  • 夸克搜索怎么屏蔽不想要的内容_夸克搜索屏蔽不良内容设置教程

    夸克搜索怎么屏蔽不想要的内容_夸克搜索屏蔽不良内容设置教程夸克搜索怎么屏蔽不想要的内容_夸克搜索屏蔽不良内容设置教程夸克搜索怎么屏蔽不想要的内容_夸克搜索屏蔽不良内容设置教程夸克搜索怎么屏蔽不想要的内容_夸克搜索屏蔽不良内容设置教程

    关闭网页智能保护、启用成人模式、管理搜索历史、标记广告及开启内容拦截器可优化夸克搜索结果。具体:1. 在设置中调整【搜索与浏览】下的【网页智能保护】开关以控制跳转与广告过滤;2. 进入【隐私设置】完成年龄验证后选择是否开启【成人模式】来屏蔽敏感内容;3. 关闭【搜索历史记录提示】和【搜索发现】以减少…

    2026年9月29日 • 用户投稿
    200
  • 高通 CEO:AI 成为新的 UI,智能体构成新的操作系统

    高通 CEO:AI 成为新的 UI,智能体构成新的操作系统高通 CEO:AI 成为新的 UI,智能体构成新的操作系统高通 CEO:AI 成为新的 UI,智能体构成新的操作系统高通 CEO:AI 成为新的 UI,智能体构成新的操作系统

    在今日举行的骁龙峰会 2025 主题演讲中,高通公司总裁兼首席执行官克里斯蒂亚诺・阿蒙(cristiano amon)登台发表演讲,深入阐述了“ai everywhere”的未来愿景。 演讲中,阿蒙指出,我们正经历个人计算领域的一次深刻变革:人工智能正在演变为全新的用户界面(UI)。这一转变的核心在…

    2026年9月29日 • 用户投稿
    100
  • CentOS系统怎么查找软件包_yum-search命令使用技巧

    CentOS系统怎么查找软件包_yum-search命令使用技巧CentOS系统怎么查找软件包_yum-search命令使用技巧CentOS系统怎么查找软件包_yum-search命令使用技巧CentOS系统怎么查找软件包_yum-search命令使用技巧

    最常用方法是使用 yum search 命令,通过关键词搜索软件包,如 yum search java 可查找所有含“java”的包;2. 使用 yum provides 可定位命令所属包,如 yum provides ifconfig 能查出 net-tools;3. 结合 grep 过滤和 &#…

    2026年9月29日 • 用户投稿
    100
  • 安装系统时,遇到 “BIOS 设置与系统安装不兼容”,怎么调整?

    安装系统时,遇到 “BIOS 设置与系统安装不兼容”,怎么调整?安装系统时,遇到 “BIOS 设置与系统安装不兼容”,怎么调整?安装系统时,遇到 “BIOS 设置与系统安装不兼容”,怎么调整?安装系统时,遇到 “BIOS 设置与系统安装不兼容”,怎么调整?

    答案:BIOS设置与系统安装不兼容通常由启动模式、安全启动、硬盘模式等配置引起,需进入BIOS调整。首先检查Boot Mode,根据操作系统选择UEFI或Legacy BIOS;若安装Linux等非微软系统,可禁用Secure Boot;将SATA Mode设为AHCI以获得最佳性能,若驱动不支持可…

    2026年9月29日 • 用户投稿
    200
  • 115网盘资源网站地址 115网盘大量资源搜索网站链接

    115网盘资源网站地址 115网盘大量资源搜索网站链接115网盘资源网站地址 115网盘大量资源搜索网站链接115网盘资源网站地址 115网盘大量资源搜索网站链接115网盘资源网站地址 115网盘大量资源搜索网站链接

    115网盘作为一款备受用户青睐的云存储服务,以其卓越的离线下载功能和超大存储空间而闻名。许多用户习惯于将高清影视、学习资料、大型软件等珍贵资源保存在其中,久而久之,形成了一个庞大而丰富的资源生态。 立即进入“☞☞☞☞☞点击国内网盘资源网站直达入口 ☜☜☜☜☜”; 立即进入“☞☞☞☞☞点击网盘资源永久…

    2026年9月29日 • 用户投稿
    200
  • 快手店铺怎么开运费险?快手开通运费险在哪里

    随着网络购物的普及,越来越多的人选择在线购物。然而,物流问题始终是消费者关注的重点。为了应对这一挑战,各大电商平台纷纷推出了运费险服务。本文将详细介绍如何在快手店铺开通运费险,帮助商家降低经营风险,增强市场竞争力。 一、运费险的概念 运费险,又称“物流运输保险”,是一种由电商平台提供的免费保险服务,…

    2026年9月29日
    100
  • SublimeText运行Pascal代码出错怎么办?教你正确设置Pascal编译器

    SublimeText运行Pascal代码出错怎么办?教你正确设置Pascal编译器SublimeText运行Pascal代码出错怎么办?教你正确设置Pascal编译器SublimeText运行Pascal代码出错怎么办?教你正确设置Pascal编译器SublimeText运行Pascal代码出错怎么办?教你正确设置Pascal编译器

    首先确认已安装Pascal编译器并正确配置环境变量或指定完整路径,接着在Sublime Text中创建Pascal构建系统,编辑Pascal.sublime-build文件设置编译命令、工作目录及错误正则,通过”variants”添加Run变体实现程序运行,若编译器找不到需检…

    2026年9月29日 • 用户投稿
    100
  • Google Chrome 官方入口一键直达

    Google Chrome 官方入口一键直达Google Chrome 官方入口一键直达Google Chrome 官方入口一键直达Google Chrome 官方入口一键直达

    Google Chrome官方入口为https://www.google.com/chrome/,提供高效渲染、多标签管理、简洁界面、丰富插件生态及跨设备加密同步功能。 Google Chrome 官方入口一键直达在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来Google Chrome …

    2026年9月29日 • 用户投稿
    100
  • 抖音橱窗带货是什么意思?橱窗带货哪里找货源和视频

    抖音橱窗带货是什么意思?橱窗带货哪里找货源和视频抖音橱窗带货是什么意思?橱窗带货哪里找货源和视频抖音橱窗带货是什么意思?橱窗带货哪里找货源和视频抖音橱窗带货是什么意思?橱窗带货哪里找货源和视频

    短视频平台逐渐成为人们生活的一部分。抖音作为中国领先的视频社交平台,凭借其庞大的用户群体和丰富的内容生态,吸引了众多商家入驻。而抖音橱窗带货作为一种新兴的电商模式,正逐渐成为短视频时代的新趋势。本文将从抖音橱窗带货的定义、特点、优势及发展趋势等方面进行深入探讨。 一、抖音橱窗带货的定义 抖音橱窗带货…

    2026年9月29日 • 用户投稿
    200
  • SublimeText运行CoffeeScript代码出错怎么办?设置Node.js的步骤

    SublimeText运行CoffeeScript代码出错怎么办?设置Node.js的步骤SublimeText运行CoffeeScript代码出错怎么办?设置Node.js的步骤SublimeText运行CoffeeScript代码出错怎么办?设置Node.js的步骤SublimeText运行CoffeeScript代码出错怎么办?设置Node.js的步骤

    答案:Sublime Text运行CoffeeScript报错主因是Node.js环境或构建系统配置不当。需先确认Node.js和CoffeeScript已安装并加入系统PATH,再创建含正确路径的CoffeeScript构建系统,使用绝对路径可避免环境变量问题,最后通过控制台排查常见路径、权限或语…

    2026年9月29日 • 用户投稿
    500
  • 穿越周期:全球三大报告解读AIoT产业的真实突破口

    穿越周期:全球三大报告解读AIoT产业的真实突破口穿越周期:全球三大报告解读AIoT产业的真实突破口穿越周期:全球三大报告解读AIoT产业的真实突破口穿越周期:全球三大报告解读AIoT产业的真实突破口

    这是我的第385篇专栏文章。 如今,AI正处在与物理世界深度融合的关键拐点。为了便于把握产业趋势、厘清泡沫与现实的边界,2025年7月和8月间,最新发布的三份权威报告为我们提供了不同视角的真相。 这三份报告分别是: 1.《2025年技术趋势展望》(Technology Trends Outlook …

    2026年9月29日 • 用户投稿
    100
  • 1688阿里巴巴官网登录 1688阿里巴巴企业采购入口

    1688阿里巴巴官网登录 1688阿里巴巴企业采购入口1688阿里巴巴官网登录 1688阿里巴巴企业采购入口1688阿里巴巴官网登录 1688阿里巴巴企业采购入口1688阿里巴巴官网登录 1688阿里巴巴企业采购入口

    1688阿里巴巴官网登录入口位于www.1688.com,用户可通过电脑端或手机应用登录,支持密码与短信验证,并可发布采购需求、匹配供应商。 1688阿里巴巴官网登录入口在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来1688阿里巴巴企业采购入口,感兴趣的网友一起随小编来瞧瞧吧! http…

    2026年9月29日 • 用户投稿
    100
  • 360极速浏览器怎么设置网页静音_360极速浏览器单个标签页静音功能使用

    360极速浏览器怎么设置网页静音_360极速浏览器单个标签页静音功能使用360极速浏览器怎么设置网页静音_360极速浏览器单个标签页静音功能使用360极速浏览器怎么设置网页静音_360极速浏览器单个标签页静音功能使用360极速浏览器怎么设置网页静音_360极速浏览器单个标签页静音功能使用

    首先开启标签页独立静音,点击标签页小喇叭图标即可静音;其次通过设置阻止自动播放声音,进入隐私与安全的网站设置,选择不允许网站自动播放声音;最后可对特定网站单独设置声音权限,点击地址栏锁形图标调整允许或阻止。 如果您在使用360极速浏览器时,发现某个网页自动播放音频影响了您的浏览体验,可以通过设置静音…

    2026年9月29日 • 用户投稿
    100
  • 如何在SublimeText中配置C++开发环境?快速搭建C++项目的教程

    如何在SublimeText中配置C++开发环境?快速搭建C++项目的教程如何在SublimeText中配置C++开发环境?快速搭建C++项目的教程如何在SublimeText中配置C++开发环境?快速搭建C++项目的教程如何在SublimeText中配置C++开发环境?快速搭建C++项目的教程

    答案是配置Sublime Text的C++开发环境需安装编译器并设置构建系统。首先安装MinGW-w64并配置PATH,验证g++可用;接着在Sublime中创建C++.sublime-build文件,定义编译和运行命令;推荐添加Run (Console)变体以支持交互输入;然后通过Package …

    2026年9月29日 • 用户投稿
    200

发表回复

登录后才能评论
关注微信