每次打开php artisan down
时,Laravel都会显示503页。
好。我可以通过在503.blade.php
内创建名为resources/views/errors
的新文件来自定义它。
但是,尽管它使客户端无法访问网站并且对HTTP 503的描述一致,但我在任何时候都不会将维护模式视为错误。
503服务不可用错误是服务器端错误,这意味着 问题通常出在网站的服务器上。 ...即使503 服务不可用错误表示另一个错误 计算机,这个问题可能只是暂时的。
如何定义自己的刀片模板(例如maintenance_mode.blade.php
)以自定义用户在应用关闭期间看到的内容,并保持503完整?
我的努力:我调查了供应商内部的中间件本身,但它仅引发异常,我假设异常被某个地方捕获并以相应视图处理响应?有人可以指出我如何实现我的需求吗?
谢谢
答案 0 :(得分:2)
一种方法可能是在Exception的Handler中更改render方法。像这样:
// app_path('Exceptions/Handler.php');
/**
* Render an exception into an HTTP response.
*
* @param \Illuminate\Http\Request $request
* @param \Exception $exception
* @return \Illuminate\Http\Response
*/
public function render($request, Exception $exception)
{
if ($exception instanceof \Illuminate\Foundation\Http\Exceptions\MaintenanceModeException) {
return response()
->view('maintenance.down', [
'message' => 'Come back later.'
], 200)
->header('Content-Type', 'text/html; charset=utf-8');
}
return parent::render($request, $exception);
}
答案 1 :(得分:0)
如果要在服务器维护中显示自定义消息(503.blade.php)
Laravel具有开箱即用的自定义功能
php artisan down --message="We are Upgrading look and feel"
现在,我们are Upgrading look and feel
将在用户访问页面时显示在页面中
如果您想进行更多自定义,请查找包装
https://github.com/MisterPhilip/maintenance-mode
如果此答案是irrelevnt
或不是fixed your problem
,请在下面发表评论,以便我解决该问题
希望有帮助
已编辑
好,然后在终端中运行命令
php artisan vendor:publish
并选择0
,以便它将发布所有视图和配置
现在打开您的视图文件夹,其中会有一个errors
文件夹,您可以看到list of error files
提供的laravel
现在根据您的自定义进行了更改,并运行php artisan opt:clear
,它将清除所有cache views ,configs
并立即尝试
通过自定义您的503.blade.php
,现在可以正常使用
您可以仅查看自定义404.blade.php
的教程并根据要求进行自定义