Qué es el error 500 y cómo solucionarlo

¿Qué es el 500 internal server error y cómo solucionarlo?

Te explicamos en qué consiste el error 500 (500 internal server error) y cómo puedes detectar el origen del problema. También te detallamos:

  • Qué es técnicamente el estado http error 500
  • En un script php
  • Cómo solucionarlo
  • En WordPress
  • Errores en el envío de Correo Electrónico

 

¿Qué significa este error?

El error del servidor 500 internal  es un código de estado HTTP que podemos ver en nuestras páginas web que nos indica que el servidor falló al completar una solicitud aparentemente válida, porque el código fuente es erróneo o el servidor web es incapaz de ejecutar la petición.

Normalmente se manifiesta al usuario en una página en blanco que el servidor web que tiene configurado por defecto.

Es un claro caso de fallo en la programación en el código o de alguna incompatibilidad entre las versiones en las que se desarrolló el script y las versiones PHP del servidor del hosting.

Puede que hayas tenido incluso alertas en la Google Search Console avisándote que hay páginas que no se pueden rastrear debido a que provocan un «internal server error».

La mayoría de los errores http produce el error interno en el servidor (Service Unavailable) originado por las siguientes causas:

  • Error de programación o de diseño web en alguno de los scripts o plugins que se están ejecutando
  • Por problemas con líneas del .htaccess de las páginas web
  • Permisos incorrectos en carpetas o archivos
  • Falta de memoria en la ejecución
  • Versión PHP no compatible con los scripts en ejecución
  • Tiempo de espera agotado
  • Servicio saturado y con pocos recursos libres
  • Falta de espacio en disco

Error 500 infografía

Solución de Problemas: Cómo Reparar este error

Detección del error: el error_log

Servidores como Apache registran en un archivo llamado «error_log» este tipo de registro de errores nos darán una pista del archivo que está causando el problema.

Este registro guarda los scritps que producen error, por lo que será muy fácil de detectarlos siempre que tengas acceso a él.

Si tu cuenta tiene este registro tendrás aislado el problema de manera fácil.

Simplemente con revisar el contenido de este archivo sabrás qué script está provocando la incidencia en tu sitio web e incluso en la línea del código donde se origina

error_log ejemplo

Sin embargo, no todos los alojamientos habilitan esta opción o usan Apache como servidor web. En este caso tendremos que investigar un poco más a fondo ¡lo que nos está fastidiando el día!

Te mostramos algunas posibles soluciones a usar para desterrar definitivamente el problema.

 

Desactiva temporalmente el .htaccess

Es posible que el error interno del servidor  sea causado por un archivo htaccess corrupto o con líneas incompatibles con tu servidor. Para eliminar por tanto este mensaje de error, es necesario corregir el archivo.

Puedes acceder al archivo abriendo el directorio raíz.

Accede por el administrador de archivos o por FTP a la carpeta public_html. Una vez lo encuentres, haz clic con el botón derecho y renómbralo a «.htaccess.antiguo» por ejemplo para hacer una copia de seguridad del contenido de este archivo.

Esto desactivará la ejecución de ese archivo en tu sitio temporalmente.

 

NOTA: Si tu servidor tiene un S.O. de Microsoft, este archivo .htaccess no estará en tu sistema y no podrá en tu caso ser la causa.

 

Renombrar temporalmente htaccess

Después de hacer esto comprueba si el sitio ya no da el error. Si lo sigue dando, necesitas ejecutar algunas pruebas más para detectar el origen del problema.

Comprobar los permisos

Otra origen del error es tener configurados las carpetas o archivos de tu web de forma errónea. Por regla general siempre deben tener los siguientes permisos, por seguridad:

  • Carpetas: 755
  • Archivos: 644

Para revisar los permisos y ver si hay alguno erróneo necesitarás acceder al administrador de archivos o al FTP.

 

Revisar los permisos de carpetas y archivos

 

Tiempo de espera agotado

Si se produce cuando importas elementos externos a tu dirección web, como por ejemplo una importación de datos usando extensiones csv o xml, seguramente el internal server error ocurre porque el tiempo de espera del servidor se agote antes de poder importar los datos.

Contacta con tu proveedor para que aumente el tiempo de ejecución de los scripts.

NOTA TÉCNICA: Los errores de gateway timeout que son como se denominan este tipo de errores suelen ocurrir en servidores Nginx o en handlers como PHP-FPM o fastcgi.

 

En WordPress

Si tu sitio web está desarrollado con este cms, entonces seguramente has visto este error varias veces.

Este es uno de los errores más comunes y en general de otros gestores de contenidos.

Estoy contigo que a veces es frustrante, pero hay que armarse de paciencia y buscar el origen del problema.

Pongamos sobre la mesa algunas soluciones a modo general para eliminar este mensaje:

 

Aumenta el límite de memoria

Las empresas de alojamiento web y el propio script de establecen límites de ejecución en la memoria. Puedes aumentar estos límites en la medida de lo posible de 2 formas:

 

  • En el alojamiento

Normalmente debes aumentar la memoria de ejecución subiendo el parámetro «memory_limit» en tu cuenta compartida. Para hacer esto deberás añadir una línea a tu php.ini personalizado:

memory_limit = 256M;

Si no puedes usar este tipo de archivo, puedes probar a usar un archivo .user.ini añadiendo la misma línea. En este caso sería necesario reiniciar el servidor web para que los cambios surtieran efecto, lo cual en un compartido sería inviable.

Otra opción es añadir una línea al .htaccess que tengas alojado en el raíz. La línea quedaría así:

php_value memory_limit 256M

Esto aumentará la memoria de ejecución a 256 Megabytes.

Si tienes tu hosting con nosotros, debes usar esta última opción, la del .htaccess.

 

  • En WordPress

Si no tienes acceso a ninguno de los archivos anteriores en tu servidor, puedes intentar aumentar el límite directamente en tu instalación.

Para ello debes editar el archivo wp-config de tu sitio. Haz clic en el archivo con el botón derecho para editarlo y añade la línea:

define('WP_MEMORY_LIMIT', '256M');

 

Necesitas ahora comprobar si aumentando este límite el error http 500 ha desaparecido. ¿Aún lo sigue dando?

Aumentar el límite de memoria en WordPress

 

Prueba a desactivar los plugins de tu web

Desactiva los plugins uno por uno para comprobar si alguno provoca el error. Si el error se resuelve después de desactivar todos los plugin, entonces aisla y elimina permanentemente el plugin que lo causa.

Aquí lo mejor es ir activando uno a uno hasta ver cuál es el que causa el error.

 

Si después de todos estos pasos aún ves errores el error en tu web, el próximo paso sería resubir por FTP las carpetas «wp-admin» y «wp-includes» de tu misma versión de WP.

No tengas miedo a hacer esta operación. Los archivos de imágenes y temas se guardan en la carpeta «wp-content».

Nunca esta de más hacer una copia de seguridad de estos datos antes de «machacarlos» con los originales del core.

 

Error en Joomla

El error 500 en Joomla viene sobre todo originado por las siguientes causas:

  • Los permisos en carpetas y archivos no son correctos.
  • El archivo de configuración tiene alguna línea que no es correcta.
  • La versión del CMS no es compatible con la versión PHP que tienes activada en tu página web.
  • Existe un problema en la base de datos MySQL que hay que depurar.
  • Tienes una memoria caché activada no soportada.

Otros errores relacionados: SMTP Error en el correo electrónico

En tu cliente de correo podemos también ver este mensaje de error interno del servidor cuando enviamos un email.

Este código de error puede ser causado por una mala interacción del servidor con tu firewall o antivirus.

Prueba a desactivarlos temporalmente para ver si el problema desaparece.

También se puede producir por un error de sintaxis: el servidor no pudo reconocer la secuencia de comandos, cuando se ha sobrepasado la longitud máxima de línea o cuando no se ha seleccionado TLS para el envío.

 

¿Y tú? ¿Te encuentras a veces con errores 500 en tu entorno web? ¿lo has dejado solucionado tras leer nuestro post?

Déjanos tu comentario para responder a tu problema o bien añadir tu tipo de error a esta lista.

Si no encuentras una solución en este artículo puedes buscar en Google más alternativas o contactar con nuestro Soporte.

No dejes de compartir nuestro artículo en tus redes sociales.

Publicado en
Avatar para Tropical Server

Tropical Server

Alojamiento Web especializado en Joomla!, Wordpress, Prestashop y Moodle. Servicios de hosting en la nube. Servidores VPS y Dedicados.

1 Comment

  1. Avatar para Tropical Server Oliver Russell el agosto 25, 2020 a las 6:37 pm

    En mi caso, recibí un error de servidor 500 al intentar instalar Moodle en un hosting. Cuando me comuniqué con el soporte, me dijeron que estaba intentando instalarlo en una ruta de directorio incorrecta.

Deja un comentario





Novedades

Apúntate a nuestra Newsletter para mantenerte informado de nuestras novedades y ofertas.

Categorías

¿Quiénes somos?

Tropical Server está especializado en Alojamiento Web Premium para los gestores de contenidos más usados. Algunas de nuestras características:

  • Discos NVMe 6 veces más rápidos que los discos SSD.
  • Servidores con LiteSpeed Web Server.
  • Plantillas Gratuitas.
  • Panel de control cPanel.
  • Backups de 2 meses.
  • Soporte Profesional.