如何配置Nginx使ThinkPHP显示自定义404页面?
- 内容介绍
- 文章标签
- 相关推荐
本文共计674个文字,预计阅读时间需要3分钟。
如果Nginx环境下运行ThinkPHP项目,访问不存在的路由时返回默认Nginx的404页面而非ThinkPHP自定义错误页面,可能是因为Nginx未将404请求交由ThinkPHP统一处理。根本原因在于Nginx将找不到文件的判断提前终止,未将请求转发至ThinkPHP。具体表现为Nginx直接返回404,未将请求底层转换为public/index.php处理。
一、启用Nginx error_page指令指向ThinkPHP入口
该方法利用Nginx的error_page机制,在发生404时内部重定向至index.php,使ThinkPHP的路由与异常处理逻辑生效,同时保留原始URL路径和查询参数。
本文共计674个文字,预计阅读时间需要3分钟。
如果Nginx环境下运行ThinkPHP项目,访问不存在的路由时返回默认Nginx的404页面而非ThinkPHP自定义错误页面,可能是因为Nginx未将404请求交由ThinkPHP统一处理。根本原因在于Nginx将找不到文件的判断提前终止,未将请求转发至ThinkPHP。具体表现为Nginx直接返回404,未将请求底层转换为public/index.php处理。
一、启用Nginx error_page指令指向ThinkPHP入口
该方法利用Nginx的error_page机制,在发生404时内部重定向至index.php,使ThinkPHP的路由与异常处理逻辑生效,同时保留原始URL路径和查询参数。

