信息发布→ 登录 注册 退出

Lar*el如何自定义错误页面(404, 500)?(代码示例)

发布时间:2025-12-13

点击量:
在 Lar*el 中自定义错误页面只需将对应状态码的 Blade 模板(如 404.blade.php、500.blade.php)放入 resources/views/errors/ 目录,Lar*el 会自动匹配渲染;需设置 APP_DEBUG=false 才生效,支持 401、403、419、429、503 等常见状态码。

laravel如何自定义错误页面(404, 500)?(代码示例)

在 Lar*el 中自定义错误页面很简单,核心是把对应状态码的 Blade 模板放到 resources/views/errors/ 目录下,Lar*el 会自动匹配渲染。

创建 404 页面(Not Found)

新建文件:resources/views/errors/404.blade.php

内容示例:

eMart 网店系统 eMart 网店系统

功能列表:底层程序与前台页面分离的效果,对页面的修改无需改动任何程序代码。完善的标签系统,支持自定义标签,公用标签,快捷标签,动态标签,静态标签等等,支持标签内的vbs语法,原则上运用这些标签可以制作出任何想要的页面效果。兼容原来的栏目系统,可以很方便的插入一个栏目或者一个栏目组到页面的任何位置。底层模版解析程序具有非常高的效率,稳定性和容错性,即使模版中有错误的标签也不会影响页面的显示。所有的标

eMart 网店系统 0 查看详情 eMart 网店系统
<!-- resources/views/errors/404.blade.php -->
<!DOCTYPE html>
<html>
<head>
    <title>页面没找到 - 404</title>
    <style>
        body { font-family: -apple-system, BlinkMacSystemFont, sans-serif; text-align: center; margin-top: 10vh; }
        h1 { color: #dc2626; font-size: 3rem; }
        a { color: #1d4ed8; text-decoration: none; }
        a:hover { text-decoration: underline; }
    </style>
</head>
<body>
    <h1>404</h1>
    <p>抱歉,你访问的页面不存在。</p>
    <a href="{{ url('/') }}">← 返回首页</a>
</body>
</html>

创建 500 页面(Server Error)

新建文件:resources/views/errors/500.blade.php

内容示例:

<!-- resources/views/errors/500.blade.php -->
<!DOCTYPE html>
<html>
<head>
    <title>服务器出错了 - 500</title>
    <style>
        body { font-family: -apple-system, BlinkMacSystemFont, sans-serif; text-align: center; margin-top: 10vh; }
        h1 { color: #b91c1c; font-size: 3rem; }
        p { color: #4b5563; }
    </style>
</head>
<body>
    <h1>500</h1>
    <p>哎呀,服务器内部出了点问题。<br>管理员已收到通知,正在紧急处理中。</p>
    <a href="{{ url('/') }}">返回首页</a>
</body>
</html>

其他常见错误页支持

Lar*el 默认支持以下状态码模板(只需创建对应文件名即可):

  • 401.blade.php —— 未认证(如登录后才能访问的页面)
  • 403.blade.php —— 禁止访问(权限不足)
  • 419.blade.php —— CSRF 失效(常见于表单过期)
  • 429.blade.php —— 请求过于频繁(限流触发)
  • 503.blade.php —— 服务暂时不可用(维护模式)

开发与生产环境注意事项

注意:Lar*el 在 debug = true(.env 中 APP_DEBUG=true)时,不会显示自定义错误页,而是展示详细的调试报错信息。只有在 APP_DEBUG=false 时才会启用你写的 404.blade.php500.blade.php

测试建议:

  • 本地开发时临时设为 APP_DEBUG=false 验证页面效果
  • 上线前确保 APP_DEBUG=false 且缓存已清:php artisan view:clear
  • 可使用 abort(404)abort(500) 在控制器中手动触发测试

基本上就这些。不需要改配置、不用注册路由,放对位置就能用。

以上就是Lar*el如何自定义错误页面(404, 500)?(代码示例)的详细内容,更多请关注php中文网其它相关文章!


相关文章: Go语言:非阻塞式判断标准输入(os.Stdin)是否有数据  mcjs网页版在线存档 mcjs云存档登录入口  微信群消息显示延迟如何解决 微信群消息刷新优化方法  Linux如何构建多环境配置管理_Linux多环境配置方案  vivo云服务网页版登录 怎么登录vivo云服务网页版  解决Flask中Quill编辑器内容提交失败及TypeError的指南  漫蛙manwa官网登录界面_漫蛙漫画网页版主站入口  NRF24L01数据传输深度解析:解决大载荷接收异常与分包策略  J*a中实现Go语言select通道多路复用机制  优化Lar*el Docker镜像:Composer与PHP版本控制策略  照顾宝贝2小游戏点击立即在线玩  在J*a中如何开发简易博客标签推荐系统_博客标签推荐项目实战解析  Go RPC HTTP服务正确实现与常见陷阱解析  使用J*aScript检测输入元素是否包含在特定类中  Composer的 archive 命令怎么用_快速打包你的PHP项目及其Composer依赖  微信网页版官方入口教程 微信网页版网页版快速登录步骤  在WordPress中通过REST API访问受BasicAuth保护的站点内容  Mac终端命令大全_Mac常用Terminal指令速查  抖音极速版最新版本 抖音极速版官方下载地址  2025年云电脑操作系统体验 | 无需本地硬件,随时随地使用高性能PC  Kafka Streams中基于消息头条件过滤消息的实现指南  Composer如何处理Git子模块(submodule)依赖_Composer与Git Submodule的对比与选择  QQ邮箱网页版入口页面 QQ邮箱在线登录入口官网  Win11如何使用Windows Sandbox Win11沙盒功能开启与使用教程【详解】  QQ邮箱登录平台入口 QQ邮箱网页版邮箱官方入口  抖音未来赚钱的新趋势 2025年值得关注的变现风口分析  CSS布局中意外空白:解决padding-top导致的顶部间距问题  怎么在html里运行vbs脚本_html中运行vbs脚本方法【教程】  夸克浏览器桌面版同步不了书签怎么处理 夸克浏览器跨设备同步异常解决方案  随机参数递归函数的基准调用次数与时间复杂度探究  C++的std::forward_list怎么用_C++ STL中单向链表容器的特点与应用  2306选座时如何选靠窗位置_12306选座靠窗座位查看方法解析  Node.js CSV 数据处理:基于字段空值条件过滤整条记录的策略  Python自定义类排序:解决lambda键值访问TypeError的实践指南  小红书怎么解除第三方平台绑定_小红书多平台登录解绑方法介绍  必由学登录入口 必由学官方网站在线访问链接  qq浏览器如何查看和导出已保存的密码 qq浏览器密码管理器数据备份教程  深入理解J*aScript中的B样条曲线与节点向量生成  微信聊天记录怎么加密_微信聊天记录加密方法  PHP文件上传至S3:策略、考量与避免本地存储的挑战  J*aScript中赋值与自增运算符的复杂交互与执行机制  PostgreSQL海量数据高效导入策略:Python与Django实践指南  Python模块化编程:有效管理依赖与避免循环引用  QQ邮箱网页版入口 QQ邮箱官方邮箱登录通道  J*a 递归快速排序中静态变量的状态管理与陷阱  Go语言HTML解析:利用Goquery精准获取指定元素内容  微信语音通话掉线如何解决 微信语音通话稳定优化方法  解决Tabulator日期时间排序问题的专业指南  Golang如何优化内存分配与垃圾回收_Golang内存管理与GC优化实践  React列表渲染与独立状态管理:避免全局状态影响局部更新 

在线客服
服务热线

服务热线

4008988990

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!