Seguramente te hayas encontrado unas cuantas veces un error 500 en plena navegación resultando imposible acceder al contenido deseado. Pero ¿sabes cuál es su origen y cómo solucionarlo? Vamos a dar respuesta en este artículo a uno de los mayores quebraderos de cabeza de webmasters y usuarios.
¿Qué es error 500?
Un error 500 ‘Internal server error’ es un fallo que impide el acceso al sitio web solicitado al haber algún tipo de problema de conexión con el servidor. Aunque parezca un poco vago este concepto del error 500 en WordPress, es así porque las razones que lo provocan pueden ser variadas, por lo que estamos ante un código de error 500 bastante genérico, sabemos que es un error en la ejecución del servidor, pero no qué es lo que lo motiva.
Lo que hay que tener claro es que un error 500 es un fallo del servidor, por lo tanto, no es algo que implique que su origen está en alguna acción llevada a cabo en la web o en el propio CMS.
Las razones que pueden esconderse detrás de un error 500 son:
✧ Error en archivo .htaccess
✧ Fallo por la versión de php
✧ Error por falta de memoria Php
✧ Error por fallos de plantilla o theme
✧ Fallo por superar el tiempo de espera
✧ Error por carpetas de archivos dañadas
✧ Fallo por permisos a archivos incorrectos
✧ Error derivado de los plugins instalados
Cómo solucionar el error 500
Está claro que para poder solucionar un error 500 se debe contar con unos determinados conocimientos en la materia. Los usuarios ‘de a pie’ que navegan en Internet y se topan con un código de error de este tipo, no pueden hacer nada, como mucho refrescar la página para comprobar si fue un fallo puntual en un momento comprometido para el servidor.
En muchas ocasiones es necesario investigar un poco para poder determinar el origen del error 500. A pesar de que la mayor parte de las veces es un problema del archivo .htaccess, no siempre es así, por lo que los supuestos que detallamos a continuación pueden resultar de lo más útiles si estás buscando de donde proviene el código de error.
¿Es detectable el origen del Error 500?
Para poder determinar la causa de este error, es conveniente acudir al fichero error_log para vislumbrar la procedencia del fallo. Desde el cPanel de tu proveedor de hosting se puede acceder al archivo php_errorlog y ver el listado de los diferentes errores por fechas.
Este fichero no tiene la verdad absoluta, ya que muchas veces es difícil interpretar los errores que contiene, pero sí ofrece muchas pistas para descartar o en las que profundizar.
Antes de nada, es recomendable realizar una copia de seguridad de la página web para evitar que la aparición del error 500 derive en una incidencia mayor.
Error 500 por archivo .htaccess
Este es el motivo más común que se encuentra detrás de un error 500 en una página web, por lo que debe ser el primer proceso que probar para solucionarlo.
Para confirmar que el error 500 proviene de ahí, es necesario acceder a los archivos de instalación y cambiar el nombre al archivo .htaccess. Si después de hacer esto, el error 500 se soluciona, ya tenemos la certeza de que el error tenía su origen en la programación de este archivo.
Para solucionar el error 500, basta con acudir a ‘ajustes’ dentro del panel de administración de tu WordPress y pulsar ‘guardar cambios‘ en ‘Enlaces permanentes’. De este modo, se genera un nuevo archivo htaccess sin ningún tipo de error.
Error 500 por versión conflictiva de php
La actualización de la versión php del hosting puede acarrear errores 500. En el caso de que esto ocurra, es evidente que la versión recién actualizada es incorrecta. Normalmente, los proveedores de hosting permiten realizar este cambio desde el cPanel, por lo que la revocación del error 500 es muy sencilla.
Lo ideal es tener siempre el sitio web funcionando a pleno rendimiento con la versión más actualizada de php, por lo que, si no podemos contar con esta última versión debido a la generación de un error 500, habrá que llevar a cabo las mejoras necesarias en materia de programación para poder disfrutarla.
Escasez de memoria
Cuando se alcanza el límite de memoria disponible en el servidor se genera un error 500. En este caso, se tiene una de las soluciones más sencillas, ya que se puede ampliar la memoria contratada con una simple llamada a tu proveedor de hosting.
Si, por el plan que tienes, puedes hacerlo tú mismo, basta con crear un archivo php.ini e incluir un código tipo: memory= XX MB y guardarlo en la carpeta wp-admin de tu WordPress. En XX pondrás el valor que en el que quieras fijar tu límite de memoria. Hay que tener en cuenta el pack contratado con el proveedor de hosting, por eso quizás resulte más sencillo llamar directamente.
Código de error por fallo en la plantilla
No es de extrañar que el error 500 venga provocado por una incongruencia con la plantilla. Para descartarlo basta con activar cualquiera otra plantilla y comprobar si el error está aún activo.
Límite de tiempo de espera excedido
Cuando se realiza una petición al servidor y el tiempo de espera es considerado excedido, se muestra un error 500. En este caso el propio servidor no suele ser el responsable en sí del código de error, normalmente viene derivado porque la conexión a un tercer servidor se interrumpió.
Esta situación se repite bastante cuando se configuran scripts Php para acceder a fuentes externas y las conexiones se pierden o los recursos dejan de ser disponibles y accesibles.
Para evitar los errores 500 derivados de este tipo de situaciones se deben configurar las reglas de tiempo de espera de modo específico, aunque lo ideal sería no depender de servidores externos para cortar estos códigos de error de raíz.
‘Internal server error' por carpetas de archivos dañadas
Otro motivo que puede albergar el origen de un error 500 es que carpetas de archivos importantes presenten daños. Las más comunes son wp-admin o wp-includes.
Para solventar el error en la ejecución del servidor, simplemente se tienen que sustituir esas carpetas descargando la última versión de WordPress disponible y copiar esas carpetas para sustituir las dañadas que provocan el error 500.
Definición de permisos incorrectos
En el caso de que el código de error esté derivado por un problema de permisos, es necesario comprobar que los permisos a archivos relevantes estén definidos correctamente. Para que todo esté configurado de modo correcto y se eviten errores 500, los permisos a directorios deben estar configurados como 755 y a archivos 655.
Error 500 por instalación de plugins
No es extraño que la instalación de plugins provoquen algún tipo de incompatibilidades o errores de diverso tipo. Cuando se acaba de instalar uno y surge un error 500, el veredicto es claro.
Sin embargo, en determinadas ocasiones no es tan sencillo encontrar el origen del conflicto. Puede que no se haya instalado ninguno, pero alguna actualización ha provocado un pequeño caos. En ese caso lo que hay que hacer para detectar el foco del código de error es desactivar todos los plugins que se tengan trabajando en el sitio web. Si después de hacer esto podemos acceder al panel de administración, tenemos la certeza de que el error 500 tenía ahí su origen.
En este caso lo que hay que hacer es descubrir cuál de ellos era el que genera el error 500 ‘internal server error’, para ello se van activando uno a uno para localizar el que entra en conflicto.
Como hemos visto, las razones de la aparición de un error 500 pueden ser variadas. La clave es ir descartando hasta dar con el origen del problema. Si no se cuenta con los conocimientos necesarios puede resultar frustrante, así que lo mejor es siempre acudir al webmaster de referencia.
Y tú ¿Te has visto en una situación similar para solucionar un error 500?
Otros errores habituales son: