Magento 2 Display Error Enable Error Reporting
This tutorial shows you how to enable error reporting in Magento 2.
In Magento 2, sometimes you’ll encounter a problem in which a black page or a plain white page appears with the error numbers like Error log record number: 568837792838 or any broken content error.
In the default setting of Magento 2, the function which allows displaying the error on the frontend is disabled. Therefore, in today’s post, I will guide you on how to display the error message or enable error reporting on Magento 2.
How to display error: Enable error reporting
- Method 1: Rename pub/errors/local.xml.sample file
- Method 2: Edit .htaccess file
- Method 3: Edit app/bootstrap.php file
Method 1: Rename pub/errors/local.xml.sample file
To display the error on the browser, you can simply rename a one XML file. However, this method is not recommended if you are in the production environment, so you should only consider using this for the development environment. Here is how you do it:
- Firstly, go to your Magento2 root directory.
- Then, open
pub/errors
. - After you have opened it, you will see a file whose name is
local.xml.sample
. - Rename it from
local.xml.sample
tolocal.xml
. In other words, you remove thesample
from the file’s name. - Finally, go to
System > Tools > Cache Management
to refresh Cache from the Magento Admin.
Method 2: Edit .htaccess file
The second method to display the error is to edit the .htaccess file
of your Magento 2 site.
When editing the file you will be able to enable the development mode of Magento as well as the PHP’s error display settings.
Firstly, open the file .htaccess
and write the following code at the end of that file:
php_value display_errors on ## enable PHP's error display settings
php_value error_reporting -1 ## set error display to E_ALL
After adding the code, open terminal/command-prompt and access the root directory of your Magento.
cd /path/to/your/magento/directory
Now, run the below command to activate the developer mode.
php bin/magento deploy:mode:set developer
The current deploy mode can be checked with this command:
php bin/magento deploy:mode:show
Finally, clear the Cache with the following command:
php bin/magento cache:clean
After following all the steps above correctly, you will see the error displays on the browser itself when browsing your Magento website. However, just like the first method, this is only good for the development environment.
Method 3: Edit app/bootstrap.php file
Besides editing .htaccess file
which is the preferred way to enable error display on your Magento site, you can also edit the PHP file. To edit the file, follow the steps below:
- Firstly, access your Magento’s root directory.
- Then, open the file
app/bootstrap.php
. - At the beginning of the file, you will see this line code:
#ini_set('display_errors', 1);
Once you saw it, please update the code to:
error_reporting(E_ALL); # Set Error Reporting as E_ALL (Report all PHP errors)
ini_set('display_errors', 1); # Un-commenting this line to enable PHP error display
After updating the code, open terminal/command-prompt and then go to the root directory of your Magento.
cd /path/to/your/magento/directory
Then, to enable the developer mode, the following command needs to be run
php bin/magento deploy:mode:set developer
In case you want to check the current deploy mode, you can use the below line:
php bin/magento deploy:mode:show
Finally, clear the Cache:
php bin/magento cache:clean
That’s it. After following all the steps above correctly, you will be able to see error displays on the browser.
Conclusion
In conclusion, although enabling Error Display on the Frontend is helpful in various situations, it is only suitable for Development Environment. If you move to the Production Environment, please undo your change. Hope that after reading this post, you will successfully display error Enable error reporting on your Magento 2 site.
Enjoyed the tutorial? Spread it to your friends!