Linux 技术手札

PHP 开启及关闭错误讯息输出

要开启或关闭 PHP 的错误讯息有几种方法, 分别是在 php.ini 内设定, httpd.conf 及 .htaccess 设定, 或者在 PHP 程式内设定, 以下是各种方法的设定方法。

1. php.ini

在 php.ini 一般默认路径在 /etc/php.ini, 在 php.ini 内找到 display_errors, 设定为 On 是开启错误信息, Off 是关闭输出:

另一个可以设定的选项是 error_reporting, 它可以设定输出那些错误提示, 常用的设定有:

修改 php.ini 后, 需要重新启动网页服务器, 设定才会生效:

# systemctl restart httpd

2. httpd.conf / .htaccess

另一种方法是透过 apache 的层面设定, 可以在 httpd.conf 及 .htaccess 设定, 好处是可以对个别虚拟主机或目录进行设定, 不用修改整台服务器的设定, CentOS 下 httpd.conf 的默认位置在 /etc/httpd/conf/httpd.conf

# vi /etc/httpd/conf/httpd.conf

在提定的目录或 VirtualHost 设定, 例如想在 /var/www/html/debug 设定输出全部错误, 可以这样:

可以看到设定跟 php.ini 差不多, 只是在 php 选项前加入 php_flag 或 php_value 设定, 而在 httpd.conf 的设定, 需要重新启动网页服务器, 设定才会生效:

# systemctl restart httpd

以上语法如果放在 .htaccess 内同样适用, 而且不用重新启动网页服务器, 只要在设定的目录下建立 .htaccess, 加入以下语法即可:

php_flag display_errors On
php_flag error_reporting 32767

p.s. error_reporting 只可以用数值设定, 所有设定数值可以在 PHP 官网 取得。

3. PHP 程式

另一个方法是在 php 程式内设定, 分别可以用 ini_set() 及 error_reporting() 两个函式设定:

Exit mobile version