当前位置:首页 > CN2资讯 > 正文内容

php.ini配置--记录PHP错误日志

2天前CN2资讯
PHP.ini 中关于错误日志的配置项:
; display_errors
;   Default Value: On
;   Development Value: On
;   Production Value: Off

; display_startup_errors
;   Default Value: Off
;   Development Value: On
;   Production Value: Off

; error_reporting
;   Default Value: E_ALL & ~E_NOTICE
;   Development Value: E_ALL | E_STRICT
;   Production Value: E_ALL & ~E_DEPRECATED

; html_errors
;   Default Value: On
;   Development Value: On
;   Production value: Off

; log_errors
;   Default Value: Off
;   Development Value: On
;   Production Value: On
display_errors = Off
error_reporting = E_ALL & ~E_NOTICE 
log_errors = On
error_log = "e:/wamp/logs/php_error.log"

参考:http://www.jb51.net/article/31499.htm 1.) display_errors = On 
开启状态下,若出现错误,则报错,出现错误提示 
dispaly_errors = Off 
关闭状态下,若出现错误,则提示:服务器错误。但是不会出现错误提示  错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项。错误回显可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利。上线后推荐关闭此选项。 

2.)log_errors 
在正式环境下用这个就行了,把错误信息记录在日志里。正好可以关闭错误回显。
默认是记录到WEB服务器的日志文件里,比如Apache的error.log文件。 当然也可以记录 error_log 指定的文件中。
3)error_reporting  error_reporting = E_ALL & ~E_NOTICE  参考:http://hi.baidu.com/allense7en/item/6eb4a4ab0d596a15a8cfb7b4 可以将数字加起来得到想要的错误报告等级。 E_ALL - 所有的错误和警告(不包括 E_STRICT) 
E_ERROR - 致命性的运行时错误 
E_WARNING - 运行时警告(非致命性错误) 
E_PARSE - 编译时解析错误 
E_NOTICE - 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。) 
E_STRICT - 编码标准化警告,允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。 E_CORE_ERROR - PHP启动时初始化过程中的致命错误 
E_CORE_WARNING - PHP启动时初始化过程中的警告(非致命性错) 
E_COMPILE_ERROR - 编译时致命性错 
E_COMPILE_WARNING - 编译时警告(非致命性错) 
E_USER_ERROR - 用户自定义的错误消息 
E_USER_WARNING - 用户自定义的警告消息 
E_USER_NOTICE - 用户自定义的提醒消息 如果设置为:E_ALL | E_STRICT,则表示记录所有的错误信息 ,可能会导致网站出现一大堆的错误代码;但是对于程序员来说应该说是一件好事,可以把代码优化到最 优; 一些非致命性错误虽然不影响程序的运行,但是会使PHP的负担加重,通常是增加了网站进程(例如 IIS的应用程序池)的负担。 本函数用来配置错误信息回报的等级,参数 level 是一个整数的位遮罩 (bitmask),见下表。 遮罩值 表示名称 
1 E_ERROR 
2 E_WARNING 
4 E_PARSE 
8 E_NOTICE 
16 E_CORE_ERROR 
32 E_CORE_WARNING 
64 E_COMPILE_ERROR 
128 E_COMPILE_WARNING 
256 E_USER_ERROR 
512 E_USER_WARNING 
1024 E_USER_NOTICE 
2047 E_ALL 
2048 E_STRICT E_NOTICE 表示一般情形不记录,只有程序有错误情形时才用到,例如企图存取一个不存在的变量,或是呼叫 stat() 函数检视不存在的文件。 
E_WARNING 通常都会显示出来,但不会中断程序的执行。这对除错很有效。例如:用有问题的正则表达式呼叫 ereg()。 
E_ERROR 通常会显示出来,亦会中断程序执行。意即用这个遮罩无法追查到内存配置或其它的错误。 
E_PARSE 从语法中解析错误。 
E_CORE_ERROR 类似 E_ERROR,但不包括 PHP 核心造成的错误。 
E_CORE_WARNING 类似 E_WARNING,但不包括 PHP 核心错误警告。
error_reporting( 7 ) = error_reporting( 1+2+4) = error_reporting(E_ERROR | E_WARING | E_PARSE)

例子

任意数目的以上选项都可以用“或”来连接(用 OR 或 |),这样可以报告所有需要的各级别错误。例如,下面的代码关闭了用户自定义的错误和警告,执行了某些操作,然后恢复到原始的报错级别: <?php //禁用错误报告 error_reporting(0); //报告运行时错误 error_reporting(E_ERROR | E_WARNING | E_PARSE); //报告所有错误 error_reporting(E_ALL); ?>
    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/26480.html

    分享给朋友:

    “php.ini配置--记录PHP错误日志 ” 的相关文章

    如何使用RackNerd优惠码进行主机购买:节省开支的最佳策略

    RackNerd是一家成立于2017年的国外主机公司,作为一家新生力量,它迅速在市场上占据了一席之地。它的使命是为全球用户提供可靠且高性能的主机服务,帮助他们搭建自己的网络基础设施。我最喜欢RackNerd的地方是他们始终如一地致力于客户体验,这让我在使用他们的服务时非常安心。 RackNerd的服...

    bwh1:搬瓦工的高效VPS管理与使用技巧

    bwh1 概述 提到 bwh1,很多人第一时间就想到搬瓦工(BandwagonHost)。bwh1 正是搬瓦工的官网域名之一,深受用户喜爱。它不仅是一个简单的链接,更是通向高效 VPS 管理的窗口。通过这个网站,用户能够方便地访问各种服务,比如 VPS 购买、管理和支持。对于追求网络稳定性和速度的用...

    探索阿什本:全球数据中心之都的科技与美食之旅

    阿什本,这个名字或许在很多人耳中听起来并不陌生。作为美国弗吉尼亚州劳登郡的一部分,它距离华盛顿特区仅34英里,恰如其分地威尔士着城市的繁华。在我踏上这片土地的那一刻,便被它的快速发展与活力所吸引。阿什本不仅是一个城市,更是全球数据中心的中心,称其为“全球数据中心之都”可谓名至实归。 在阿什本,互联网...

    Rndc2的线路怎么样?全面评测RackNerd洛杉矶DC02机房

    Rndc2的基本线路信息 说到Rndc2的线路,首先让我跟大家分享一下它的基本信息。这个线路的核心在于RackNerd洛杉矶DC02机房,位置恰好在美国西海岸的洛杉矶。成立于2019年的RackNerd,以其价格优势著称,给我们提供了比较便宜的美国VPS选择,最低年付大约10美元,这对于很多希望节省...

    咸鱼云:高性价比VPS服务解决您的在线需求

    咸鱼云概述 在互联网服务日益发展的今天,咸鱼云(SaltyFish)作为一家新兴的主机商家,自2019年成立以来,逐渐在市场中占据了一席之地。它的出现让许多寻找高性价比VPS服务的用户有了新的选择。咸鱼云专注于基于KVM架构的国外VPS服务,凭借较为稳定的性能和实惠的价格,吸引了不少追求性价比的客户...

    deb包安装方法与依赖关系管理完全指南

    在开始讨论deb包之前,先来了解一下它的定义与结构。deb包是Debian及其衍生Linux发行版(如Ubuntu)中用于软件分发的一种格式。简单来说,deb包就像是一个小的文件夹,里面包含了安装一个程序所需的所有文件和信息。这些文件包括程序本身、相关的配置文件、以及它对其他软件包的依赖信息。结构上...