我的编程空间,编程开发者的网络收藏夹
学习永远不晚

php如何设置错误日志

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

php如何设置错误日志

这篇文章主要讲解了“php如何设置错误日志”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何设置错误日志”吧!

设置方法:打开php.ini文件,设置“error_reporting=E_ALL”、“display_errors=Off”、“log_errors=On”、“error_log = E:/php_log/php_error.log”等。

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

对于 PHP 开发者来说,一旦某个项目投入使用,应该立即将配置文件 php.ini 中的 display_errors 选项关闭,以免因为这些错误所透露的路径、数据库连接、数据表等信息而遭到黑客攻击。但是任何一个项目在投入使用后,都难免会有错误出现,那么如何记录一些对开发者有用的错误报告呢?

我们可以在单独的文本文件中将错误报告作为日志记录。错误日志的记录,可以帮助开发人员或者管理人员查看系统是否存在问题。如果需要将程序中的错误报告写入错误日志中,只要在 PHP 的配置文件中,将配置项 log_errors 开启即可。

错误报告默认会记录到 Web 服务器的日志文件里,例如记录到 Apache 服务器的错误日志文件 error.log 中。当然也可以将错误日志记录到指定的文件中。

使用指定的文件记录错误报告日志

如果想使用自己指定的文件记录错误日志,一定要确保这个文件存放在文档根目录之外,以减少遭到攻击的可能。并且该文件一定要让 PHP 脚本具有写权限。假设在 Linux 操作系统中,将 /usr/local/ 目录下的 error.log 文件作为错误日志文件,并设置 Web 服务器进程用户具有写的权限。然后在 PHP 的配置文件中,将 error_log 指令的值设置为这个错误日志文件的绝对路径。

需要将 php.ini 中的配置指令做如下修改:

error_reporting  =  E_ALL                             // 将会向PHP报告发生的每个错误  display_errors = Off                                     // 不显示满足上条 指令所定义规则的所有错误报告  log_errors = On                                           // 决定日志语句记录的位置  log_errors_max_len = 1024                         // 设置每个日志项的最大长度  error_log = E:/php_log/php_error.log         // 指定产生的错误报告写入的日志文件位置

PHP 的配置文件按上面的方式设置完成以后,并重新启动 Web 服务器。这样,在执行 PHP 的任何脚本文件时,产生的所有错误报告都不会在浏览器中显示,而会记录在自己指定的错误日志 E:/php_log/php_error.log 中。

此外,不仅可以记录满足 error_reporting 所定义规则的所有错误,而且还可以使用 PHP 中的 error_log() 函数把错误信息发送到 web 服务器的错误日志或者到一个文件里。

error_log() 函数的原型如下所示:

error_log ( string $message [, int $message_type = 0 [, string $destination [, string $extra_headers ]]] ) : bool

参数说明如下:

  • $message:需要记录的错误信息;

  • $message_type:设置错误应该发送到何处。可能的信息类型有以下几个:

    • 0:(默认值)将 $message 发送到 PHP 的系统日志,使用操作系统的日志机制或者一个文件,取决于配置文件中 error_log 设置了什么;

    • 将 $message 发送到参数 $destination 设置的邮件地址。 第四个参数 $extra_headers 只有在这个类型里才会被用到;

    • (已废弃)不再是一个选项;

    • $message 被发送到位置为 $destination 的文件里。字符 $message 不会默认被当做新的一行;

    • 将 $message 直接发送到 SAPI 的日志处理程序中。

  • $destination:目标,也就是错误消息被发送到的目的地。它的含义描述于以上,由 $message_type 参数所决定;

  • $extra_headers:额外的头。当 $message_type 设置为 1 的时候使用。 该信息类型使用了 mail() 的同一个内置函数。

【示例】以登入 Mysql 数据库为例,当登入失败时记录错误信息。

<?php    $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");    if (!$link) {        error_log('Mysql 数据库连接失败!',0);        exit();    }?>

运行上面的代码,会在 php.ini 配置文件中 error_log 一项所设置的目录中生成对应的错误日志文件,文件内容如下:

[08-May-2020 13:17:31 PRC] PHP Warning:  mysqli_connect(): (HY000/1045): Access denied for user 'my_user'@'localhost' (using password: YES) in D:\WWW\index.php on line 2[08-May-2020 13:17:31 PRC] Mysql 数据库连接失败!

感谢各位的阅读,以上就是“php如何设置错误日志”的内容了,经过本文的学习后,相信大家对php如何设置错误日志这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

php如何设置错误日志

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

php如何设置错误日志

这篇文章主要讲解了“php如何设置错误日志”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何设置错误日志”吧!设置方法:打开php.ini文件,设置“error_reporting=E
2023-06-20

PHP错误日志如何配置和使用

小编给大家分享一下PHP错误日志如何配置和使用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!对于 PHP 开发者来说,一旦某个项目投入使用,应该立即将配置文件 p
2023-06-25

如何输出php错误日志

输出php错误日志的方法:1、修改php-fpm.conf中的catch_workers_output和error_log配置;2、修改php.ini配置文件;3、重启php-fpm。
2017-07-02

php如何打开错误日志

这篇文章将为大家详细讲解有关php如何打开错误日志,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及
2023-06-08

php如何查找错误日志

这篇文章主要介绍“php如何查找错误日志”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何查找错误日志”文章能帮助大家解决问题。错误级别首先,在PHP中,错误分为多个级别,包括致命错误、严重错
2023-07-06

php错误日志如何存储

这篇文章主要介绍“php错误日志如何存储”,在日常操作中,相信很多人在php错误日志如何存储问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php错误日志如何存储”的疑惑有所帮助!接下来,请跟着小编一起来学习吧
2023-07-05

php.ini如何配置错误日志

这篇文章主要介绍“php.ini如何配置错误日志”,在日常操作中,相信很多人在php.ini如何配置错误日志问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php.ini如何配置错误日志”的疑惑有所帮助!接下来
2023-06-20

Apache如何设置服务器的错误日志

要设置Apache服务器的错误日志,您可以编辑Apache的配置文件(通常是httpd.conf或apache2.conf),并添加以下指令:打开配置文件:sudo nano /etc/httpd/conf/httpd.conf找到Erro
Apache如何设置服务器的错误日志
2024-07-05

PHP中如何处理日志错误?

PHP是一种广泛应用于Web开发的脚本语言,其应用场景很多,例如网站、CMS、后台管理系统等。随着业务的复杂度提高,出现错误的可能性也会增大,这时候就需要系统的错误日志记录,方便开发人员及时排查问题。以下是针对PHP中如何处理日志错误的一些
PHP中如何处理日志错误?
2023-12-18

在 PHP 中查找错误日志位置

我们将介绍一种使用 php --info 命令在 apache2 模块中定位和查看 PHP 中错误日志的方法。我们可以在 Windows 和 Linux 系统中使用此命令。此方法将定位系统中 PHP 错误日志文件的位置。我们还将介绍另一种使
在 PHP 中查找错误日志位置
2024-02-27

如何配置Nginx访问与错误日志

这篇“如何配置Nginx访问与错误日志”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何配置Nginx访问与错误日志”文章吧
2023-06-30

nginx中如何输出php错误日志文件

这篇文章主要介绍“nginx中如何输出php错误日志文件”,在日常操作中,相信很多人在nginx中如何输出php错误日志文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”nginx中如何输出php错误日志文件
2023-07-05

linux crontab错误日志如何看

本文小编为大家详细介绍“linux crontab错误日志如何看”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux crontab错误日志如何看”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
2023-03-07

linux如何定位错误日志

在Linux系统中,可以使用以下方法来定位错误日志:1. 查看系统日志:使用命令`dmesg`可以查看内核日志,其中包含了系统启动过程中的错误和警告信息。2. 查看系统日志文件:Linux系统会将系统日志保存在/var/log目录下的各个日
2023-09-16

tomcat错误日志如何查看

要查看Tomcat的错误日志,您可以按照以下步骤进行操作:1. 打开Tomcat所在目录。在Windows上,默认情况下,Tomcat安装目录通常是`C:\Program Files\Apache Software Foundation\T
2023-09-22

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录