I just want to only turn on PHP errors and disable all notices and warnings in PHP files.
6 Answers
It is probably not the best thing to do. You need to at least check out your PHP error log for things going wrong ;)
# PHP error handling for development servers
php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off
php_flag log_errors on
php_flag ignore_repeated_errors off
php_flag ignore_repeated_source off
php_flag report_memleaks on
php_flag track_errors on
php_value docref_root 0
php_value docref_ext 0
php_value error_log /home/path/public_html/domain/PHP_errors.log
php_value error_reporting -1
php_value log_errors_max_len 0
5 Comments
glerendegui
Remembet to never send an error_log file to a public access location.
imp
@glerendegui indeed, I am not suggesting this is best practice. Like the comment says for a simple development environment, not production its very handy to access the error log on your localhost||network.
Tarik
@glerendegui can you explain why not send an error_log file to a public access location?
glerendegui
@Tarik error_log file may contain very sensitivy info about your app bugs. Leaving this file in a public environment looks very unsure. Anyone could try access yourdomain/error_log and access that info
zero8
Does this also disable the error show in mysql ? can anyone post related hide show error from sql that php handles and shows.
Try:
php_value error_reporting 2039
5 Comments
Binod Kalathil
Nice! Can you please provide the logic behind the integer 2039?
qwerty
The value 2039 stands for E_ALL & ~E_NOTICE. Found that here: ibm.com/developerworks/library/os-debug
Rajesh Patel
when i put it in .htaccess it gives 500 internal error
mpchadwick
@RajeshPatel this works with mod_php but not php-fpm. With php-fpm you can use SetEnv PHP_VALUE "error_reporting = 2039"
NetVicious
The value comes from the values of the constants PHP assigned to E_ALL and others. You can get the number using a simple echo on a php file doing as example
echo E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_WARNING & ~E_NOTICE which should be a string used usually on the php.iniFortes is right, thank you.
When you have a shared hosting it is usual to obtain an 500 server error.
I have a website with Joomla and I added to the index.php:
ini_set('display_errors','off');
The error line showed in my website disappeared.
Comments
Use:
ini_set('display_errors','off');
It is working fine in WordPress' wp-config.php.
2 Comments
Duck
this is the only one that works. I have tried 20 different lines. This, works.
Peter Mortensen
Do you mean file wp-config.php? Where is that file supposed to be located?