WSOD (WordPress)

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Belangrijkste oorzaken

  • Storingen worden bijna altijd door PHP verzoorzaakt
  • Gehackte site waarbij foutmeldingen worden uitgezet

Zie ook White Screen of Death (Drupal).

Acties

Probeer /wp-admin

Als je de /wp-admin-pagina kunt bereiken, ben je een heel eind.

php-logs achterhalen

  • Met behulp van Phpinfo() kun je een hoop PHP-instellingen achterhalen, waaronder de waarde voor error_log: Deze bevat het pad naar het error-logboek. Als deze de speciale waarde syslog bevat, wordt het standaard SAPI-foutenlogboek gebruikt. Anders wordt op een LAMP-server meestal het Apache-foutenlogboek gebruikt
  • Via phpinfo() kun je tevens de locatie achterhalen van Apache-logboeken. Meestal /var/log/apache2

De belangrijkste Apache-logboeken:

  • access.log - Hierin kun je zien of de betreffende site is opgeroepen op de webserver
  • error.log - En hier kun je de bijbehorende fouten zien. Geen fouten? Misschien moet je meldingen aanzetten - Zie hieronder.

php-foutmeldingen enablen

Om PHP-foutmeldingen te activeren, moet je uiteraard eerst weten waar je dat configureert. Gebruik daar opnieuw phpinfo voor. Voor PHP 7.0 lijkt dit standaard /etc/php/7.0/apache2/php.ini te zijn.

Foutmelding-gerelateerde variabelen worden getoond in phpinfo in onderdeel Core. Variabelen + bijbehorende instellingen om zoveel mogelijk informatie te verkrijgen (handig op ontwikkelomgevingen maar niet op productie-omgevingen):

error_reporting = E_ALL
display_errors = On
display_startup_erros = On
html_errors = On
log_errors = On

Hernoem plugin-map

Hernoem wp-content/plugins naar wp-content/plugins-old [1].

Hernoem theme-map

wp-content/themeswp-content/themes-old [2].

Controleer of de site gehacked is

Dit overkwam mij in de zomer van 2018: Foutmeldingen wilden maar niet verschijnen, totdat ik php-bestanden met een editor opende: Alle bestanden waren gehacked, en bovenaan was code ingevoegd die foutmeldingen onderdrukten.

Zie ook

Bronnen