laravel维护模式 MaintenanceMode
有一天,做日常接口开发,突然接口不行了,报错:
[2020-02-15 15:12:57] local.ERROR: Handler:render {"class":"Illuminate\\Foundation\\Http\\Exceptions\\MaintenanceModeException","file":"D:\\qyPj\\OEM\\hans_online\\api-oem-test.qywww.com\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode.php","line":43,"message":"","code":0,"trace":""}
马上找到vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode.php对应的43行:
/*** Handle an incoming request.** @param \Illuminate\Http\Request $request* @param \Closure $next* @return mixed** @throws \Symfony\Component\HttpKernel\Exception\HttpException*/public function handle($request, Closure $next){if ($this->app->isDownForMaintenance()) {$data = json_decode(file_get_contents($this->app->storagePath().'/framework/down'), true);throw new MaintenanceModeException($data['time'], $data['retry'], $data['message']);}return $next($request);}
}
43行是: throw new MaintenanceModeException($data['time'], $data['retry'], $data['message']);
马上查了了这个CheckForMaintenanceMode模式,叫做维护模式,
查看文档:https://learnku.com/docs/laravel/5.5/configuration/1283#maintenance-mode
如下
维护模式
当应用程序处于维护模式时,所有对应用程序的请求都显示为一个自定义视图。这样可以在更新或执行维护时轻松地「关闭」你的应用程序。 维护模式检查包含在应用程序的默认中间件栈中。如果应用程序处于维护模式,则将抛出一个状态码为 503 的 MaintenanceModeException
异常。
要启用维护模式,只需执行下面的 Artisan 命令 down
:
php artisan down
你还可以向 down 命令提供 message
和 retry
选项。其中 message 选项的值可用于显示或记录自定义消息,而 retry 值可用于设置 HTTP 请求头中 Retry-After
的值:
php artisan down --message="Upgrading Database" --retry=60
要关闭维护模式,请使用 up
命令:
php artisan up
{tip} 你可以通过修改
resources/views/errors/503.blade.php
模板文件来自定义默认维护模式模板。
维护模式和队列
当应用程序处于维护模式时,不会处理 队列任务。而这些任务会在应用程序退出维护模式后再继续处理。
维护模式的替代方案
维护模式会导致应用程序有数秒的停机(不响应)时间,因此你可以考虑使用像 Envoyer 这样的替代方案,以便与 Laravel 完成零停机时间部署。
应该是我之前尝试artisan命令时,运行了php artisan down命令
运行php artisan up,接口项目又可以了
laravel维护模式 MaintenanceMode相关推荐
- ESXi处理主机错误无法进入维护模式
一.问题描述 某Esxi主机因主机错误,手动关闭DRS后迁移虚拟机,发现某些虚拟机呈不可访问状态,主机进入维护模式失败 处理 1.将不可访问状态的vm记录,然后从清单移除,待主机恢复后,或存储里找到对 ...
- 云客Drupal源码分析之网站维护模式
当drupal的网站需要升级.导入内容.备份.更改内容类型等等会影响访问用户的时候需要开启维护模式,操作路径是:管理-配置-开发-维护模式 开启维护模式并输入提示内容即可,在提示内容中@site可以代 ...
- ESXi 6.5 进入维护模式死机在68%的进度的bug
今天操作ESXi 主机的时候遇见了一个bug.因为需要安装一个插件,豆子选择主机进入维护模式,以便重启,结果这个操作卡住了68%的进度上 看了看当前的版本号如下,这个是去年年底发行的版本了,经过研究, ...
- OpenStack Nova 计算节点的维护模式
目录 文章目录 目录 维护模式 Set/Unset Maintenance Mode Using the OpenStack CLI 维护模式 在以下场景中,我们会考虑进入维护模式: 硬件替换或升级. ...
- VMware vSphere 5.1 群集深入解析(二十六)- 数据存储维护模式汇总
VMware vSphere 5.1 Clustering Deepdive HA.DRS.Storage DRS.Stretched Clusters Duncan Epping &Fran ...
- Spring Cloud Netflix项目进入维护模式之我见
这两天看到一则新闻:https://spring.io/blog/2018/12/12/spring-cloud-greenwich-rc1-available-now#spring-cloud-ne ...
- ambari 维护模式及reset API 操作
Ambari 的维护模式(Maintenance Mode)介绍 Ambari 提供的 Maintenance Mode,是为了让用户在调试或者维护 Service 的时候,抑制不必要的告警(Aler ...
- nextcloud服务器处于维护模式,Nextcloud 加密开启与管理
Nextcloud的服务器端加密生成一个强大的加密密钥,该密钥由用户的密码解锁.您的用户不需要追踪额外的密码,只需像往常一样登录即可.它只加密文件的内容,而不是文件名和目录结构. 密匙存放在以下目录, ...
- Xen Server 7.0 一直无法退出维护模式
起因:非关机后自动进入维护模式无法退出,提示服务器正在使用 查看当前虚拟机列表(7.0 要用 xl),发现没有任何虚拟机 [root@xenserver]#xl vm-list 尝试强制关闭所有虚拟机 ...
最新文章
- 陷阱~关于引用类型,请不要模棱两可!
- Nature子刊:Salmon不比对快速宏基因组基因定量
- (转载)聊聊Git原理
- 中越跨国结婚需要什么条件和手续
- vs2010 qt中文乱码 最终版
- apereo cas mysql_Apereo CAS 5.0.X 默认提供的数据库认证的四种方式
- typescript索引类型_TypeScript的索引类型与映射类型,以及常用工具泛型的实现
- 我的Java设计模式-原型模式
- cf1552F. Telepanting
- 求从 1 到 100 之间所有奇数的平方和
- 如何在Linux下安装nginx
- 编程体系结构(07):JavaEE之Web开发
- python 核心编程_【02】Python核心编程 (全)
- linux 行尾加字符串,linux – cat in expect脚本在字符串结尾添加新行
- java string转sql date_Java中的util.Date,sql.Date,sql.Time,String类型转换
- Android 常用语句
- Android View 绘制流程
- centos中多台主机免密登录_关于单点登录(SSO)数据共享(session和redis)的那点事?...
- Web网页设计-盒子模型
- 解决前端vue中的Uncaught TypeError: this.Form is undefined