WordPress biedt debug opties aan die je in de wp-config.php kan zetten van jouw WordPress installatie. Handig als er iets niet werkt op je website omdat je bijvoorbeeld een nieuwe plugin hebt geïnstalleerd. Standaard staat onderstaande optie uit. Verander je false naar true dan zal WordPress alle fouten op het scherm tonen.
define( 'WP_DEBUG', false );
Alle fouten op het scherm tonen kan de opmaak van de website verpesten. Je raakt misschien ook snel het overzicht kwijt. Daarom heeft WordPress de onderstaande twee opties bedacht:
define( 'WP_DEBUG', true); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );
Met de eerste optie worden alle fouten opgeslagen in het bestand debug.log in de wp-content map. Met de tweede optie worden de fouten niet getoond op het scherm.
Het nadeel van de WP_DEBUG_LOG optie is dat het bestand opgeslagen wordt in een publiek beschikbare map. Iedereen kan het bestand opvragen als je bijvoorbeeld gaat naar https://www.domein.nl/wp-content/debug.log. Met een Google Dork kan je snel websites vinden die dit bestand op de server hebben staan.
De eerste oplossing is om alle debug opties uit te zetten op een productieomgeving. Om het debug.log bestand buiten de publiek beschikbare htdocs of public map op te slaan vervang je de boolean door de locatie van een map. Dit ziet er dan zo uit:
define( 'WP_DEBUG', true); define( 'WP_DEBUG_LOG', '../debug.log'); define( 'WP_DEBUG_DISPLAY', false );
Belangrijke eis voor bovenstaande oplossing is dat je toegang moet hebben tot de map waar de htdocs of public map in zit. Niet iedere hosting biedt deze mogelijkheid aan.
Debug.log wordt alleen aangemaakt als er fouten zijn.