El WordPress no carrega o dona error 500: causes i solució

Dídac Martín · Pistacho Digital
Entres a la teva web i surt una pàgina gairebé en blanc amb les paraules «Internal Server Error» o «Error 500», o un missatge que diu que hi ha hagut un error crític al lloc web. De vegades ni això: la pantalla es queda en blanc i prou. És l’error 500 de WordPress. Fa por, però el més normal és que les pàgines i les dades encara hi siguin: el que falla és la manera de mostrar-les. T’explico què el sol provocar i com arreglar-lo pas a pas, sense empitjorar les coses.
Què vol dir l’error 500
Vol dir que el servidor ha intentat preparar la pàgina i alguna cosa ha fallat pel camí. El missatge no diu què. És com un cotxe que no arrenca: saps que hi ha un problema, però no si és la bateria o el motor d’arrencada.
Al WordPress, el que falla gairebé sempre és el codi PHP d’algun connector (plugin), del tema o del mateix WordPress, o bé la configuració del servidor. La documentació oficial de WordPress sobre els errors més comuns (en anglès) ho resumeix en cinc sospitosos, i coincideixen amb el que em trobo jo.
Abans de tocar res, tres comprovacions ràpides
- Mira si falla per a tothom. Obre la web des del mòbil amb les dades, no amb el wifi de l’oficina. Si des de fora funciona, el problema pot ser a la teva xarxa o al navegador.
- Mira el correu de l’administrador. Des de la versió 5.2, quan un connector o el tema provoquen un error greu, WordPress envia un correu a l’adreça de l’administrador amb un enllaç per entrar en mode de recuperació. En aquest mode, WordPress posa en pausa el connector o el tema que falla, només per a tu, i et deixa entrar al tauler. Busca també a la carpeta de correu brossa.
- Pensa què ha canviat. Una actualització d’ahir, un connector nou, un canvi que va fer algú a la web o un avís de l’allotjament (el hosting) sobre la versió de PHP. Sovint l’error apareix just després d’un canvi, i saber quin estalvia molta estona.
I una cosa més: si l’allotjament té un avís d’incidència al tauler o a la seva web, espera’t una mica abans de posar-t’hi. De vegades el problema és seu.
Les causes més habituals de l’error 500 al WordPress
Un connector que falla
És de les causes més freqüents. Un connector s’actualitza i ja no és compatible amb un altre, amb el tema o amb la teva versió de PHP. O dos connectors que feien el mateix es trepitgen.
El tema
Passa el mateix amb el tema, sobretot si té codi fet a mida o si fa anys que no s’actualitza.
El fitxer .htaccess espatllat
És un fitxer petit, a la carpeta principal de la web, que dona instruccions al servidor. Si un connector el modifica malament o algú l’edita a mà, el servidor deixa d’entendre’l i respon amb un error 500 a totes les pàgines. La documentació de WordPress l’assenyala com la causa més probable.
Falta de memòria
Cada servidor fixa quanta memòria pot fer servir el WordPress. Si una pàgina o un connector en necessita més, la càrrega es talla. Passa sobretot en botigues amb WooCommerce i en webs amb maquetadors pesants.
La versió de PHP
PHP és el llenguatge amb què està fet WordPress. Els allotjaments l’actualitzen de tant en tant, i si la teva web té connectors o un tema antics, poden deixar de funcionar d’un dia per l’altre. Avui WordPress recomana PHP 8.3 o superior. Si la teva web no aguanta una versió actual, és senyal que fa temps que ningú no la manté.
Fitxers de WordPress malmesos
Una actualització que es talla a mitges pot deixar fitxers incomplets. És menys habitual, però passa.
Un atac
De vegades l’error 500 és el símptoma que algú ha modificat fitxers que no havia de tocar. Si a més veus redireccions estranyes o usuaris que no coneixes, llegeix abans què cal fer amb una web piratejada, perquè l’ordre dels passos canvia.
Com solucionar l’error 500 pas a pas
Per a gairebé tot això has d’entrar als fitxers de la web, amb un programa d’FTP o amb el gestor de fitxers del tauler de l’allotjament. Si no saps què és cap de les dues coses, llegeix fins al final abans de decidir.
- Fes una còpia de seguretat dels fitxers i de la base de dades, o comprova que l’allotjament en té una de recent. Tocar sense còpia és la manera més ràpida de convertir un problema d’una hora en un de tres dies.
- Si t’ha arribat el correu del mode de recuperació, entra per l’enllaç. WordPress et dirà quin connector o tema ha fallat, i el podràs desactivar o actualitzar des del tauler.
- Desactiva els connectors. Si no pots entrar al tauler, canvia el nom de la carpeta
wp-content/plugins, per exemple aplugins-off. Si la web torna, el culpable és un connector. Torna a posar el nom original a la carpeta i reactiva’ls des del tauler d’un en un fins que la web torni a fallar. - Prova amb un altre tema. Si amb els connectors desactivats continua fallant, canvia el nom de la carpeta del teu tema dins de
wp-content/themes. WordPress passarà a un dels seus temes per defecte, si en tens algun d’instal·lat. La web es veurà diferent, però sabràs si el problema és al tema. - Revisa el .htaccess. Canvia-li el nom a
.htaccess_oldi torna a carregar la web. Si funciona, ves a Paràmetres > Enllaços permanents i desa sense canviar res: WordPress en crearà un de nou. - Mira el registre d’errors. WordPress pot apuntar els errors en un fitxer,
wp-content/debug.log, sense ensenyar-los als visitants. S’activa afegint alwp-config.phpaquestes línies, que són les que proposa la documentació de depuració de WordPress (en anglès):define( 'WP_DEBUG', true );,define( 'WP_DEBUG_LOG', true );idefine( 'WP_DEBUG_DISPLAY', false );. El registre et dirà quin fitxer ha fallat i a quina línia. Quan acabis, torna a deixarWP_DEBUGenfalse. - Pregunta a l’allotjament per la memòria i la versió de PHP. Si el registre parla de memòria esgotada («Allowed memory size exhausted»), o si l’allotjament ha canviat la versió de PHP fa poc, et poden dir quins límits tens i si pots tornar a la versió anterior mentre s’arregla la web de debò.
Un avís sobre tornar a una versió antiga de PHP: serveix per sortir del pas, no com a solució. Les versions antigues deixen de rebre pedaços de seguretat, i els allotjaments acaben retirant-les.
El que pots fer tu i el que és millor deixar a algú
Ho pots fer tu, encara que no siguis tècnic:
- Comprovar si falla per a tothom.
- Buscar el correu del mode de recuperació i entrar per l’enllaç.
- Trucar a l’allotjament i preguntar si han canviat alguna cosa al servidor.
Si ja has treballat amb fitxers per FTP, pots provar els passos de desactivar connectors, canviar el tema i revisar el .htaccess. Són reversibles si només canvies noms i no esborres res.
Millor que ho faci algú amb experiència:
- Editar el
wp-config.php. Si hi falta un punt i coma, la web deixa de carregar sencera. - Interpretar el registre d’errors i corregir el codi.
- Posar la web al dia amb una versió actual de PHP quan el tema o els connectors no la suporten.
- Restaurar una còpia de seguretat en una botiga amb comandes, on restaurar a la babalà et pot fer perdre les vendes dels últims dies.
Com evitar que el WordPress torni a deixar de carregar
Molts errors 500 vénen del mateix: una actualització feta sense còpia i sense mirar després si la web encara funcionava. O al revés, una web que feia tant temps que no s’actualitzava que un canvi de l’allotjament la va trencar.
És el que faig amb el manteniment WordPress. Actualitzo jo, comprovo que tot funciona després, guardo una còpia diària fora del teu servidor i, si la web cau, l’avís m’arriba a mi, de dia o de nit. Hi ha tres plans: Essencial per 39 €/mes, Negoci per 89 €/mes i Botiga, per a webs que venen en línia, per 179 €/mes. Preus sense IVA i sense permanència.
Si la teva web no carrega ara mateix
Soc el Dídac Martín, programador web a Igualada, i treballo sol, o sigui que sempre parles amb mi. Fa més de vint anys que programo i mantinc webs de gestories, escoles, parròquies, residències i empreses de la comarca.
Si la web està caiguda, escriu-me per WhatsApp o truca’m al 611 85 67 78. Contesto les urgències en menys de dues hores, a qualsevol hora, i et dic el preu abans de tocar res. Fora d’horari, a la nit o el cap de setmana, la urgència té un preu tancat des de 490 €, i amb el pla Botiga hi va inclosa.
Si ara funciona però no te’n refies, demana una revisió gratuïta. Miro la web des de fora, només amb la informació pública, i en dos dies feiners et dic què hi he trobat i què arreglaria primer.