错误报告级别是位字段的叠加,推荐使用 E_ALL | E_STRICT 1 E_ERROR 致命的运行时错误 2 E_WARNING 运行时警告(非致命性错误) 4 E_PARSE 编译时解析错误 8 E_NOTICE 运行时提醒(经常是bug,也可能是有意的) 16 E_CORE_ERROR PHP启动时初始化过程中的致命错误 32 E_CORE_WARNING PHP启动时初始化过程中的警告(非致命性错) 64 E_COMPILE_ERROR 编译时致命性错 128 E_COMPILE_WARNING 编译时警告(非致命性错) 256 E_USER_ERROR 用户自定义的致命错误 512 E_USER_WARNING 用户自定义的警告(非致命性错误) 1024 E_USER_NOTICE 用户自定义的提醒(经常是bug,也可能是有意的) 2048 E_STRICT 编码标准化警告(建议如何修改以向前兼容) 4096 E_RECOVERABLE_ERROR 接近致命的运行时错误,若未被捕获则视同E_ERROR 6143 E_ALL 除E_STRICT外的所有错误(PHP6中为8191,即包含所有) track_errors = Off 是否在变量$php_errormsg中保存最近一个错误或警告消息。 display_errors = On 是否将错误信息作为输出的一部分显示。 在最终发布的web站点上,强烈建议你关掉这个特性,并使用错误日志代替(参看下面)。 在最终发布的web站点打开这个特性可能暴露一些安全信息, 例如你的web服务上的文件路径、数据库规划或别的信息。 display_startup_errors = Off 是否显示PHP启动时的错误。 即使display_errors指令被打开,关闭此参数也将不显示PHP启动时的错误。 建议你关掉这个特性,除非你必须要用于调试中。 report_memleaks = On 是否报告内存泄漏。这个参数只在以调试方式编译的PHP中起作用, 并且必须在error_reporting指令中包含 E_WARNING report_zend_debug = On 尚无说明文档 html_errors = On 是否在出错信息中使用HTML标记。 注意: 不要在发布的站点上使用这个特性! docref_root = ;"http://localhost/phpmanual/" docref_ext = ;".html" 如果打开了html_errors指令,PHP将会在出错信息上显示超连接, 直接链接到一个说明这个错误或者导致这个错误的函数的页面。 你可以从http://www.php.net/docs.php下载php手册, 并将docref_root指令指向你本地的手册所在的URL目录。 你还必须设置docref_ext指令来指定文件的扩展名(必须含有''.'')。 注意: 不要在发布的站点上使用这个特性。 error_prepend_string = ;"<font color=#f00>" 用于错误信息前输出的字符串 error_append_string = ;"</font>" 用于错误信息后输出的字符串 xmlrpc_errors = Off xmlrpc_error_number = 0 尚无文档 [PHP-Core-Logging] define_syslog_variables = Off 是否定义各种系统日志变量,如:$LOG_PID, $LOG_CRON 等等。 关掉它以提高效率的好主意。 你可以在运行时调用define_syslog_variables()函数来定义这些变量。 error_log = 将错误日志记录到哪个文件中。该文件必须对Web服务器用户可写。 syslog 表示记录到系统日志中(NT下的事件日志, Unix下的syslog(3)) 如果此处未设置任何值,则错误将被记录到Web服务器的错误日志中。 log_errors = Off 是否在日志文件里记录错误,具体在哪里记录取决于error_log指令。 强烈建议你在最终发布的web站点时使用日志记录错误而不是直接输出, 这样可以让你既知道那里出了问题,又不会暴露敏感信息。 log_errors_max_len = 1024 设置错误日志中附加的与错误信息相关联的错误源的最大长度。 这里设置的值对显示的和记录的错误以及$php_errormsg都有效。 设为 0 可以允许无限长度。 ignore_repeated_errors = Off 记录错误日志时是否忽略重复的错误信息。 错误信息必须出现在同一文件的同一行才被被视为重复。 ignore_repeated_source = Off 是否在忽略重复的错误信息时忽略重复的错误源。 [PHP-Core-Mail] 要使邮件函数可用,PHP必须在编译时能够访问sendmail程序。 如果使用其它的邮件程序,如qmail或postfix,确保使用了相应的sendmail包装。 PHP首先会在系统的PATH环境变量中搜索sendmail,接着按以下顺序搜索: /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib 强烈建议在PATH中能够找到sendmail。 另外,编译PHP的用户必须能够访问sendmail程序。 SMTP = "localhost" mail()函数中用来发送邮件的SMTP服务器的主机名称或者IP地址。仅用于win32。 smtp_port = 25 SMTP服务器的端口号。仅用于win32。 sendmail_from = 发送邮件时使用的"From:"头中的邮件地址。仅用于win32 该选项还同时设置了"Return-Path:"头。 sendmail_path = "-t -i" SYS 仅用于unix,也可支持参数(默认的是''sendmail -t -i'') sendmail程序的路径,通常为"/usr/sbin/sendmail或/usr/lib/sendmail"。 configure脚本会尝试找到该程序并设定为默认值,但是如果失败的话,可以在这里设定。 不使用sendmail的系统应将此指令设定为sendmail替代程序(如果有的话)。 例如,Qmail用户通常可以设为"/var/qmail/bin/sendmail"或"/var/qmail/bin/qmail-inject"。 qmail-inject 不需要任何选项就能正确处理邮件。 mail.force_extra_parameters = 作为额外的参数传递给sendmail库的强制指定的参数附加值。 这些参数总是会替换掉mail()的第5个参数,即使在安全模式下也是如此。 [PHP-Core-ResourceLimit] default_socket_timeout = 60 默认socket超时(秒) max_execution_time = 30 每个脚本最大允许执行时间(秒),0 表示没有限制。 这个参数有助于阻止劣质脚本无休止的占用服务器资源。 该指令仅影响脚本本身的运行时间,任何其它花费在脚本运行之外的时间, 如用system()/sleep()函数的使用、数据库查询、文件上传等,都不包括在内。 在安全模式下,你不能用ini_set()在运行时改变这个设置。 |