`

php报错启动配置

    博客分类:
  • php
阅读更多
PHP 报错信息
2008年11月22日 星期六 03:16 P.M.
设定错误讯息回报的等级。

语法: int error_reporting(int [level]);

传回值: 整数

函式种类: PHP 系统功能


E_NOTICE 表示一般情形不记录,只有程式有错误情形时才用到,例如企图存取一个不存在的变数,或是呼叫 stat() 函式检视不存在的档案。
E_WARNING 通常都会显示出来,但不会中断程式的执行。这对除错很有效。例如:用有问题的常规表示法呼叫 ereg()。
E_ERROR 通常会显示出来,亦会中断程式执行。意即用这个遮罩无法追查到记忆体配置或其它的错误。
E_PARSE 从语法中剖析错误。
E_CORE_ERROR 类似 E_ERROR,但不包括 PHP 核心造成的错误。
E_CORE_WARNING 类似 E_WARNING,但不包括 PHP 核心错误警告。
PHP 的错误报告

  php.ini 文件中有许多配置设置。您应当已经设置好自己的 php.ini 文件并把它放在合适的目录中,就像在 Linux 上安装 PHP 和 Apache 2 的文档说明中所示的那样(请参阅 参考资料)。在调试 PHP 应用程序时,应当知道两个配置变量。下面是这两个变量及其默认值:

ps:上面的一些值可能有误,

display_errors = Off
error_reporting = E_ALL



  通过在 php.ini 文件中搜索它们,可以发现这两个变量当前的默认值。display_errors 变量的目的很明显 —— 它告诉 PHP 是否显示错误。默认值是 Off。但是,要让开发过程更加轻松,请把这个值设为 On:



display_errors = On



  error_reporting 变量的默认值是 E_ALL。这个设置会显示从不良编码实践到无害提示到出错的所有信息。E_ALL 对于开发过程来说有点太细,因为它在屏幕上为一些小事(例如变量未初始化)也显示提示,会搞糟浏览器的输出。我只想看到错误和不良编码实践,但是不想看到无害的提示。所以,请用以下值代替 error_reporting 的默认值:



error_reporting = E_ALL & ~E_NOTICE



  重新启动 Apache,就全部设置好了。接下来,将学习如何在 Apache 上做同样的事。

  服务器上的错误报告

  依赖于 Apache 正在做的工作,在 PHP 中打开错误报告可能没法工作,因为在计算机上可能有多个 PHP 版本。有时很难区分 Apache 正在使用哪个 PHP 版本,因为 Apache 只能查看一个 php.ini 文件。不知道 Apache 正在使用哪个 php.ini 文件配置自己是一个安全问题。但是,有一种方法可以在 Apache 中配置 PHP 变量,从而保证设置了正确的出错级别。

  而且,最好知道如何在服务器端设置这些配置变量,以否决或抢占 php.ini 文件,从而提供更高级别的安全性。
在配置 Apache 时,应该已经接触过 <apache2-install-dir>/conf/httpd.conf 中 http.conf 文件中的基本配置。

  要做在 php.ini 文件中已经做过的事,请把下列各行添加到 httpd.conf,覆盖任何 php.ini 文件:


php_flag display_errors on
php_value error_reporting 2039



  这会覆盖在 php.ini 文件中为 display_errors 已经设置的标志,以及 error_reporting 的值。值 2039 代表 E_ALL & ~E_NOTICE。如果愿意采用 E_ALL,请把值设为 2047。同样,还是要重启 Apache。

  接下来,要在服务器上测试错误报告。


出处:http://hi.baidu.com/chinamartin/blog/item/cb138c1a2aa1cefdae5133d8.html
分享到:
评论

相关推荐

    nginx调用php-fpm出错解决方法和nginx配置详解

    装完了nginx和php-5.5,配置好了nginx调用php后,就开始启动php-fpm。 使用下面的命令 代码如下:/usr/local/php/sbin/php-fpm 就可以启动了。 在nginx的目录中创建个php的检测脚本index.php 结果在打开...

    Windows下PHP安装路径配置错误导致Apache无法启动的解决方法

    LoadModule php5_module “C(/D):/Program Files/...装完MySql,配置好apache和php的配置文件后,重起发现问题了 Apache无法正常启动。 鉴于此原因本人呢又卸载重装了1遍apache+php+mysql这个环境,但是问题却

    phpinfo无法显示的原因及解决办法

    今天调试lnmp环境,出现如下报错。无法查询到php信息。 环境:linux版本CentOS Linux release 7.3.1611 (Core),nginx使用tengine。php和tengine均为源码安装到/usr/local。 首先确认tengine已经启动,在网站根目录...

    php-7.3.7.tar.gz

    编译 ./configure --prefix=/usr/...加入 systemtl 服务: cd /usr/local/src/php-7.3.0beta1/sapi/fpm cp php-fpm.service /usr/lib/systemd/system/ 启动: systemctl start php-fpm systemctl status php-fpm -l

    php-7.2.20.tar.gz

    编译 ./configure --prefix=/usr/...加入 systemtl 服务: cd /usr/local/src/php-7.3.0beta1/sapi/fpm cp php-fpm.service /usr/lib/systemd/system/ 启动: systemctl start php-fpm systemctl status php-fpm -l

    php-7.0.27.tar.gz

    编译 ./configure --prefix=/usr/...加入 systemtl 服务: cd /usr/local/src/php-7.3.0beta1/sapi/fpm cp php-fpm.service /usr/lib/systemd/system/ 启动: systemctl start php-fpm systemctl status php-fpm -l

    php-5.6.29.tar.gz

    编译 ./configure --prefix=/usr/...加入 systemtl 服务: cd /usr/local/src/php-7.3.0beta1/sapi/fpm cp php-fpm.service /usr/lib/systemd/system/ 启动: systemctl start php-fpm systemctl status php-fpm -l

    php-7.3.0.tar.gz

    编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/...启动: systemctl start php-fpm systemctl status php-fpm -l

    php-7.1.29.tar.gz

    编译 ./configure --prefix=/usr/...加入 systemtl 服务: cd /usr/local/src/php-7.3.0beta1/sapi/fpm cp php-fpm.service /usr/lib/systemd/system/ 启动: systemctl start php-fpm systemctl status php-fpm -l

    PHP-wampServer-phpStorm-xdebug配置指南图文介绍.doc

    PHP-wampServer-phpStorm-xdebug环境配置图文介绍,这个都是自己在电脑操作过的,以下是文档目录内容 1. 环境配置 2 2. 项目源码配置 2 代码放置 2 数据库放置 2 3. 网页访问 2 注意事项: 2 4. 局域网访问 4 第一步...

    memcache安装及 memache+keepalive集群配置

    memcache安装及常见错误; memache+keepalive集群配置

    Windows系统下Apache、PHP无法启动问题总结

    最近经常被问到Apache无法启动的问题,所以写一篇文章,总结一下Windows下经常遇到的 Apache/PHP 无法启动的情况的解决方法。 Apache/PHP 无法启动分两种情况: 1、Apache无法启动,没加载php也无法启动 2、Apache...

    在Linux操作系统下+php5.x+apache2.x运行环境配置所需软件.zip

    curl-7.27.0.tar.gz expat-2.1.0.tar.gz freetype-2.3.8.tar.gz freetype-2.4.10.tar.gz ...php-mbstring-5.4.1-1.fc17.i686.rpm webmin-1.590-1.noarch.rpm xpm-3.4k-2.i386.rpm xpm-3.4k.tar.gz zlib-1.2.3.tar.gz

    taskPHP--基于php开发的定时计划任务框架.zip

    建议生产部署在linux下运行多进程模式,因为运行在多线程模式运行一段时间后报错,pthreads has detected that the core\lib\Pthread could not be started, the system lacks the necessary resources or the system...

    Apache连接PHP后无法启动问题解决思路

    问题:apache之前正常,连接配置完PHP后无法启动,用apache Test Configration测试后报错形式为: Cannot load D:/php/php5apache2_2.dll into server(或者php5apache2_4.dll) 我个人的解决轨迹是这样的: 1 先查看...

    eAccelerator.dll for php5.3.8 nts

    重新启动php-cgi.exe,OK,配置完成! 附件下载: 注意,编译本文件,必须使用VS 2008 ,即编译为VC9的版本,不然在系统日志里会报错,上一个版本我是用VS2010编译的,出错信息为: “弹出应用程序: Warning: PHP ...

    PHP Nginx MySql 绿色WEB服务器 RTMP FOR WINDOWS

    # 如果启动服务报错 请进去运行环境目录安装两个文件即可。 # 支持直播rtmp配置 修改配置文件 nginx.conf 最后一行 # 去除 修改配置文件 default.conf 倒数第二行 # 去除 需要改后重启即可启动RTMP。 HLS配置...

    Windows下Memcache的安装及PHP扩展配置方法

    一、下载 ...Tips:如果没有报错信息,则至此memcached已经安装并启动,而且默认是开机自动启动的 三、PHP扩展下载及版本说明 可以在CSDN上找到完整的 php_memcache.dll 扩展包,选择对应自己php版本

    ubuntu下搭建php开发环境(nginx+(cgi)php5fpm+memcached+xdebug)

    他的配置文件是在/etc/nginx/里面,网站项目路径是在/var/www里面,安装之后一定要确保nginx的启动账户有对网站目录的访问权限,否则会报错。 第二步,安装cgi linux底下的cgi程序非常多,在这里我选择的是php5-fpm ...

Global site tag (gtag.js) - Google Analytics