Setting display_errors=0 and log_errors=1 without

2019-01-24 12:13发布

For reasons outside my control I am unable to set display_errors=0 and log_errors=1 in php.ini on my production server. I know I can set error_reporting(0); to completely suppress all error messages, but this impacts both the log errors and the displayed errors. I was hoping there would be an equivalent to setting display_errors=0 and log_errors=1 at runtime. Is this possible? Thanks.

3条回答
贼婆χ
2楼-- · 2019-01-24 12:22

If you are using PHP as module and cannot use php.ini main directive nor overrided php.ini on the desired folder, and you won't to enable it on php file, yo can try to use .htaccess habilities.

On the top of the folder containing your app, put an .htaccess file with: php_flag display_errors 0

Should apply only to the php output display not the logs.

Anyway, the solution provided about ini_set() will apply only to the pages who contain it. Note: If you have includes, the display_error value will work when parse it. But if you access it directly won't work.

查看更多
Emotional °昔
3楼-- · 2019-01-24 12:29

Both are PHP_INI_ALL, so you can just use ini_set at runtime.

ini_set('display_errors', 0);
ini_set('log_errors', 1);

See http://php.net/manual/en/ini.list.php

查看更多
该账号已被封号
4楼-- · 2019-01-24 12:35

try this:

ini_set('display_errors', 0);
ini_set('log_errors', 1);
查看更多
登录 后发表回答