44

I just want to only turn on PHP errors and disable all notices and warnings in PHP files.

1

6 Answers 6

60

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
Sign up to request clarification or add additional context in comments.

5 Comments

Remembet to never send an error_log file to a public access location.
@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.
@glerendegui can you explain why not send an error_log file to a public access location?
@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
Does this also disable the error show in mysql ? can anyone post related hide show error from sql that php handles and shows.
29

If you are in a shared hosting plan that doesn't have PHP installed as a module you will get a 500 server error when adding those flags to the .htaccess file.

But you can add the line

ini_set('display_errors','off');

on top of your .php file and it should work without any errors.

Comments

24

Try:

php_value error_reporting 2039

5 Comments

Nice! Can you please provide the logic behind the integer 2039?
The value 2039 stands for E_ALL & ~E_NOTICE. Found that here: ibm.com/developerworks/library/os-debug
when i put it in .htaccess it gives 500 internal error
@RajeshPatel this works with mod_php but not php-fpm. With php-fpm you can use SetEnv PHP_VALUE "error_reporting = 2039"
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.ini
6

Fortes 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

2

Use:

ini_set('display_errors','off');

It is working fine in WordPress' wp-config.php.

2 Comments

this is the only one that works. I have tried 20 different lines. This, works.
Do you mean file wp-config.php? Where is that file supposed to be located?
0

I used ini_set('display_errors','off'); and it worked great.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.