Blog
Qué es y cómo solucionar el HTTP error 500
- Publicado por: admin
- Categoría: Blog Sin categoría
El HTTP error 500 es un código de respuesta que se utiliza en el mencionado protocolo para indicar que ha ocurrido un error interno en el servidor donde se aloja una determinada web. El mensaje de error que se muestra en estos casos es “500 Internal Server Error”.
Por lo generar este tipo de error suele suceder en servidores Apache y son originados por alguna falla en la programación de los sistemas que están desarrollados en diferentes lenguajes de programación como puede ser PHP.
Cuándo puede suceder el error 500 de HTTP
Este error se puede presentar en muchas ocasiones, debido a que la programación permite una gran variedad de flujos de comportamientos. Por lo generar los fallos más comunes que generan este tipo de error en el servidor son:
Al conectar la aplicación con la base de datos: Muy a menudo nos podemos encontrar con errores de conexión a base de datos. Esto puede presentarse al ingresar datos de autenticación incorrectos o al no conocer la estructura de las tablas.
Al escribir una sintaxis incorrecta: Es muy frecuente encontrarnos con errores típicos de sintaxis, y más en un lenguaje de programación como puede ser PHP. Para que esto no te suceda te recomendamos testear toda la aplicación antes de ponerla en producción.
Al tener problemas de performance: Este tipo de fallo se puede originar al procesar mucha información sin disponer de los recursos de hardware necesarios. Por ejemplo suele suceder cuando se procesan millones de registros en una base de datos.
Esos son algunos errores típicos que pueden generar una respuesta del servidor HTML 500, pero pueden existir muchos otros más.
Cómo solucionar el error HTTP 500 en el servidor
Por empezar tenemos que comprender que dicho error por si solo no nos está indicando nada como para determinar la causa verdadera del problema. Para poder encontrar más pistas es muy importante realizar algunas configuraciones en el servidor.
La configuración que tenemos que realizar en nuestro servidor es para que se muestren los mensajes de errores originales y no el texto genérico.
Por ejemplo, en caso de que estemos utilizando el lenguaje de programación PHP y tengamos el acceso al archivo de configuración del PHP.ini tendremos que modificar la variable display_errors que por defecto se encuentra en Off como se muestra a continuación:
display_errors = Off
Lo que esa configuración nos proporciona es el hecho de ocultar todos los errores, lo que puede ser muy útil en un entorno de producción para no dar información privada que pueda comprometer la seguridad del sistema.
En este caso para poder mostrar los errores correctamente vamos a tener que modificar esa misma variable para que tenga el valor On.
display_errors = On
Para que el servidor tome la nueva configuración es muy probable que tengas que reiniciar el servidor. Luego simplemente al ejecutar la página que mostraba el error “500 Internal Server Error” debería mostrar un nuevo mensaje con el error exacto.
En caso de que te encuentres en un hosting y no tengas acceso al servidor para poder modificar el archivo PHP.ini o para poder reiniciarlo vas a tener contactarte con soporte para que ellos mismo puedan darte el acceso o realizar los pasos mencionados para solucionarte el problema.
Otra opción es montar la web localmente con un servidor junto al módulo de PHP para que poder reproducir el error y solucionarlo.