HTTP 500 Internal Server Error: Causas Y Soluciones
Última actualización:
Joan Vega
El Internal Server Error HTTP 500 ocurre típicamente cuando el servidor encuentra una condición inesperada que le impide cumplir la solicitud. Este post te ayudará a entender las causas del error y a encontrar soluciones apropiadas.
No es un error en tu conexión o navegador. En su lugar, significa que algo ha salido mal con el sitio web.
Pantalla de error genérica 500 en el navegador Chrome
La White Screen Of Death Del Error 500
La «White Screen Of Death» (WSOD) es un término utilizado para describir el error 500 HTTP, y otros códigos de error HTTP 5XX cuando el servidor no puede servir ningún contenido al usuario. Algunos navegadores como Safari o Firefox presentan esta pantalla en blanco:
Firefox no muestra mensajes de error 500
Alternativamente, existen navegadores que traducen el error interno 500, mostrando diferentes mensajes informativos.
Diferentes Mensajes De Error 500
Aunque este error puede aparecer de muchas maneras, todos significan lo mismo. A continuación, se muestran algunos ejemplos de cómo podrías ver un error 500 HTTP.
«500 – Internal Server Error»
«Error 500»
«Error interno del servidor 500. Lo sentimos, algo ha salido mal.»
«500 Internal Server Error»
«500. Esto es un error. Hubo un error. Por favor, inténtalo de nuevo más tarde. Eso es todo lo que sabemos.»
«HTTP 500 – Internal Server Error»
«HTTP 500»
«Error HTTP 500»
«Internal Server Error»
«Esta página no está funcionando en este momento. HTTP ERROR 500.»
«Esta página no está funcionando. – localhost no puede manejar esta solicitud en este momento. – HTTP ERROR 500″
Error 500 genérico mostrado en el navegador Edge
Cuando se habilita la opción de mostrar errores al usuario y la ejecución no se interrumpe, el servidor puede proporcionar información más detallada sobre los errores que cuando el usuario se encuentra con una WSOD (White Screen Of Death).
En tales casos, el servidor puede mostrar detalles cruciales relacionados con el error, como el archivo y el número de línea donde ocurrió el error, una descripción del error y, a veces, una traza de pila.
La siguiente captura de pantalla muestra un ejemplo de esto, detallando un error interno del servidor 500 en una página de WordPress:
En la siguiente sección, encontrarás varios escenarios que pueden provocar la aparición del error 500.
Causas Del 500 Internal Server Error
Error de base de datos al intentar recuperar datos. Por ejemplo, una base de datos corrupta o una sintaxis SQL incorrecta.
La aplicación lanza un error, como un error de tiempo de ejecución, por ejemplo, una memoria PHP insuficiente o un tiempo de ejecución PHP agotado.
Hay un error en el código de la aplicación. Por ejemplo, PHP intenta incluir un archivo que no existe, o una división por cero interrumpe la ejecución.
Tu hardware del servidor podría tener un problema. Por ejemplo, tienes archivos corruptos debido a una falla en el disco.
Hay un problema con el software del servidor. Por ejemplo, php-fpm está mal configurado o la versión actual tiene un error.
Cómo Solucionar El Internal Error 500
Como se mencionó en la sección anterior, las causas del error 500 pueden ser diversas y no siempre son aparentes en el navegador.
Para solucionarlo, comprueba los registros de errores o imprímelos en el navegador para un diagnóstico más detallado.
En lo que respecta a los Errores internos del servidor 500, no hay una solución única para todos.
Comprobar los registros de errores puede ayudar a identificar la causa raíz.
Cómo Obtener Más Detalles Sobre Los Errores En PHP
La respuesta es simple: mostrar los errores o inspeccionar los registros. La última opción es preferible, ya que un Internal Server Error 500 a veces puede provocar que la ejecución se interrumpa, lo que resulta en nada más que una WSOD (White Screen Of Death).
¡Oye, sólo una cosa!
Si tienes un sitio web de WordPress alojado en un servidor Wetopi, puedes acceder fácilmente a tus registros con solo un clic de tu ratón.
Para habilitar los registros, aquí tienes dos opciones: la primera para aplicaciones PHP genéricas y la segunda para sitios que ejecutan WordPress.
Cómo mostrar y registrar errores en aplicaciones PHP simples
Habilitar la notificación de errores: agregar la siguiente línea al inicio de tu script PHP:
error_reporting(E_ALL);
Mostrar errores agregando esto:
ini_set('display_errors', 1);
Y registrar errores estableciendo estas dos opciones:
Además, también puedes establecer estas directivas en el archivo de configuración PHP php.ini.
error_reporting = E_ALL
display_errors = On
log_errors = On
error_log = /ruta/a/php_errors.log
Cómo mostrar errores de PHP en WordPress
Puedes utilizar la constante WP_DEBUG en el archivo wp-config.php para mostrar errores de PHP con WordPress. Esto activará el modo de depuración en WordPress y mostrará todos los errores, advertencias y avisos de PHP en la pantalla.
Localiza el archivo wp-config.php: Este archivo se encuentra en el directorio raíz de la instalación de WordPress.
Abre el archivo wp-config.php: Puedes abrir este archivo utilizando un editor de texto como Notepad, TextEdit o Sublime Text.
Agrega la constante WP_DEBUG para mostrar los errores: define('WP_DEBUG', true);
O bien, habilita el registro de depuración en /wp-content/debug.log con esta siguiente constante: define( 'WP_DEBUG_LOG', true );
Microsoft Internet Information Services (IIS) muestra detalles del error 500
Si tu servidor web es Microsoft IIS, las versiones 7.0 y posteriores tienen un subconjunto de códigos de error HTTP 500.XX que indican una causa más específica del error 500. Esta subcategoría de códigos de error 500 te ayudará a identificar la causa del error.
Un último consejo:
Cuando Inspecciones Registros, Mira En El Lugar Correcto
Cuando ocurra un error interno del servidor 500 en PHP, se considera un mensaje de nivel de Error en lugar de una Advertencia o Aviso. Por lo tanto, al examinar registros o pantallas de depuración para fines de solución de problemas, concéntrate exclusivamente en los Errores y omite los mensajes de Advertencia y Aviso.