Solucionando el Error HTTP 500 de Servidor Interno en Tu Sitio Web

by Jos Velasco
Solucionando el Error HTTP 500 de Servidor Interno en Tu Sitio Web thumbnail

Casi todas las conversaciones (no tan) favoritas surgen la mayoría de las noches de viernes, cuando ya has pasado del hambre y estás entrando en el modo hambriento y enojado.

“¿Qué quieres para cenar?”

“Hmm, no sé. ¿Y tú qué quieres para cenar?”

Bueno, el error interno del servidor HTTP 500 es tan fructífero como esta conversación.

Este mensaje genérico es lo que verás cuando el servidor ha encontrado un error que no puede explicar inmediatamente.

El proceso para solucionar el error interno del servidor 500 en tu sitio web es sorprendentemente similar a planificar la cena del viernes.

Se trata de trabajar a través de posibles soluciones: ¿pizza, pasta, cereal? Hasta que resuelvas tu problema con el servidor.

En esta guía, cubriremos qué es el error interno del servidor 500 y te guiaremos a través de algunas causas potenciales. Luego te daremos 10 consejos para ayudarte a poner tu sitio web en orden de nuevo.

¡Comencemos!

Comprendiendo el Error del Servidor Interno HTTP 500 y Por Qué es Importante

Ventana del navegador Chrome mostrando el mensaje 'Error interno del servidor 500' en una página en blanco.

Como mencionamos antes, el error interno del servidor 500 puede ser frustrantemente poco específico.

Cuando ocurre, no obtienes muchos detalles al respecto. De hecho, es posible que no recibas ninguna información en absoluto. A pesar de su nombre, el problema puede no estar relacionado con el servidor en sí. También podría ser un problema con tu sitio web o tu navegador.

Un error HTTP 500 generalmente simplemente significa que el problema no coincide con otro código de error, como uno de los muchos códigos 300, 400 o incluso otros 500.

Sea cual sea el significado del error, es importante que lo resuelvas rápidamente porque cuando tu sitio web no está disponible, podrías estar perdiendo tráfico y ventas potenciales. Si está fuera de línea por un tiempo, también puede afectar negativamente la optimización para motores de búsqueda (SEO) en la que has trabajado tanto para perfeccionar.

Si tu sitio es rastreado mientras está fuera de línea, existe la posibilidad de que Google interprete el error como un problema con tu sitio web.

Este error también puede afectar negativamente la experiencia del usuario (UX) al darles a los visitantes la impresión de que tu sitio web es poco profesional, o peor aún… no confiable. Una mala UX no solo afectará tu ranking en Google, sino que también te hará perder clientes. Después de todo, ¡no puedes hacer negocios si tu sitio no es accesible!

El error HTTP 500 puede ser causado por muchas cosas diferentes, lo que lo convierte en una tarea un tanto complicada de resolver. Dicho esto, las posibles causas del error interno del servidor 500 incluyen:

  • Problemas de compatibilidad de plugins para sitios web de WordPress.
  • Archivos corruptos.
  • Errores de codificación o sintaxis.
  • Límite de memoria PHP agotado.

Afortunadamente, muchos de estos problemas se pueden resolver por tu cuenta con un poco de ayuda. (¡Lo que te proporcionaremos en breve!)

Variaciones de Este Error 500

Dependiendo de tu sistema operativo, navegador y la causa del error, las variaciones en cómo aparecen los errores 500 pueden ser diversas. Por ejemplo, podrías ver algo como esto:

Cuadro de mensaje de error con 'Error interno del servidor 500' en rojo y texto de explicación debajo sobre fondo claro.

Una pantalla blanca simple, a veces conocida como la Pantalla Blanca de la Muerte (WSoD), a veces también puede indicar un error interno del servidor 500.

Además, ten en cuenta que muchos propietarios de sitios tienen la opción de personalizar sus mensajes de error 500. Por lo tanto, es posible que veas este mensaje de error de muchas formas diferentes.

10 Formas de Solucionar el Código de Error 500

Ahora que has tenido una introducción al error interno del servidor 500, es hora de discutir cómo resolverlo.

Comenzaremos con las soluciones más accesibles antes de pasar a las más técnicamente complejas.

1. Intenta Recargar la Página

Empecemos con el escenario más simple y mejor caso.

Algunas situaciones pueden hacer que un error interno 500 se resuelva por sí solo en unos pocos minutos.

Por ejemplo, si acabas de realizar cambios en un plugin o tema en un sitio de WordPress, o si tu host está experimentando un tráfico inusualmente pesado, es posible que veas un error de servidor. ¡Si este es tu caso, estás de suerte!

Una simple recarga de página debería devolver las cosas a la normalidad.

Así que lo primero que deberías intentar es esperar uno o dos minutos, durante los cuales es posible que el error se resuelva por sí mismo. Luego, intenta recargar la página presionando F5 o (command + R si estás usando un Mac).

Recibe contenido directamente en tu bandeja de entrada

Suscríbete ahora para recibir todas las últimas actualizaciones, directamente en tu bandeja de entrada.

2. Borra la Caché de Tu Navegador

Otra forma potencialmente rápida y sencilla de resolver el código de estado 500 es limpiar la caché de tu navegador. Es posible que la caché se haya corrompido, lo que causaría problemas al intentar acceder a cualquier sitio web, no solo al tuyo.

Lo primero que deberías hacer es verificar si el sitio Down For Everyone Or Just Me. Esto te informará si es un problema generalizado o si solo tú estás teniendo problemas.

Si estás solo en tu frustración por el error 500, el problema podría estar en tu navegador. En este caso, intenta acceder a tu sitio desde un navegador diferente. Si funciona una alternativa, es una señal de que el problema está en tu caché.

En la mayoría de los navegadores, puedes comenzar el proceso de limpieza de la caché presionando Ctrl + Shift + Suprimir.

En Google Chrome, puedes hacer clic en los tres puntos verticales en la esquina superior derecha. Desde allí, encuentra “Borrar datos de navegación” en el menú, haz tus selecciones y haz clic en “Borrar datos“.

Pop-up de configuración de Chrome para borrar datos de navegación, mostrando opciones para cookies, archivos en caché y otros datos.

Una vez que hayas limpiado la caché de tu navegador, intenta acceder a tu sitio web nuevamente.

Pero si sigues viendo el error interno del servidor 500, es hora de pasar a soluciones más involucradas.

3. Realiza una Copia de Seguridad de Tu Sitio

Antes de adentrarte en la tarea de ajustar bajo el capó, siempre es prudente realizar una copia de seguridad de tu sitio web.

Si DreamHost aloja tu sitio, puedes aprovechar nuestra función de copia de seguridad con un clic. Si no es así, o si no puedes iniciar sesión debido al error 500, no te preocupes. Aún puedes crear una copia de seguridad manualmente.

Para hacer esto, necesitarás guardar copias de los archivos de tu sitio web y de tus bases de datos.

Primero, localiza tus credenciales del Protocolo de Transferencia de Archivos Seguro (SFTP) en tu cuenta de alojamiento web. Si no estás seguro de dónde encontrarlas, pide los detalles a tu proveedor de alojamiento.

A continuación, descarga el cliente SFTP de tu elección. Nosotros recomendamos FileZilla. Luego, utiliza esas credenciales que acabas de obtener para conectarte a tu servidor.

Interfaz de FileZilla FTP con la opción "Quickconnect" destacada y estado de conexión, estructuras de directorios locales y remotos.

Ahora, debes crear la carpeta que contendrá tus archivos respaldados dentro de FileZilla. Haz clic derecho dentro del cuadrante superior izquierdo, elige “Create Directory” y nombra tu nueva carpeta.

Después, simplemente arrastra los archivos que deseas guardar desde el cuadrante superior derecho hacia tu nueva carpeta en el lado izquierdo. Si no estás seguro de qué seleccionar, toma toda la carpeta que tenga el nombre de tu sitio.

La descarga que has iniciado probablemente tomará algún tiempo, pero una vez que hayas terminado, ¡puedes pasar a hacer una copia de seguridad de tu base de datos!

Te mostraremos cómo hacerlo con WordPress.

Regresa a tu cuenta de alojamiento y encuentra y accede a la herramienta phpMyAdmin. Encuentra y selecciona la base de datos de tu sitio en la barra lateral izquierda. Eso abrirá tu base de datos.

Interfaz de phpMyAdmin mostrando la base de datos seleccionada "tylhak_dream_press" y varios nombres de tablas en la barra lateral izquierda.

Ahora, navega hasta la pestaña de ‘Exportar’ en la parte superior de tu pantalla. Selecciona el ‘método Rápido’ y haz clic en el botón Exportar.

¡Cuando la descarga termine, tu copia de seguridad estará completa!

Interfaz de phpMyAdmin con la casilla "Quick - display only the minimal options" seleccionada y la pestaña "Export" resaltada.
Artículo relacionado
Cómo Crear una Copia de Seguridad de tu Sitio WordPress (3 Métodos)
Leer más

4. Accede a Tus Registros de Errores

Los registros de errores de tu sitio pueden proporcionar información sobre lo que está causando el error 500. Dependiendo de tu proveedor de alojamiento, estos registros pueden cambiar con bastante frecuencia, por lo que querrás echar un vistazo lo antes posible. Incluso si no encuentras la información que buscas de inmediato, ¡vale la pena intentarlo!

Puedes verificar tus registros de errores accediendo nuevamente a los archivos de tu sitio a través de SFTP y abriendo el archivo de registros.

Directorio raíz de un sitio de WordPress accedido a través de SFTP, con carpetas como .cache, logs, .php, .wp-cli, etc.

Aquí, selecciona el sitio que está experimentando el error. Puedes ver varios directorios. Descarga el que tenga la fecha más reciente.

Puedes ver las entradas de registro abriendo el archivo que acabas de descargar con tu editor de texto preferido. Con suerte, lo que encuentres te proporcionará un contexto adicional para el error 500.

Si eres usuario de WordPress, otra excelente opción es habilitar el registro de depuración de WordPress. Puedes hacer esto conectándote a tu sitio a través de SFTP, abriendo el archivo con el nombre de tu sitio y buscando el archivo wp-config.php dentro.

Dentro de él, busca la siguiente línea (command + F en Mac o Ctrl+Shift+F en Windows te será útil aquí):

define(‘WP_DEBUG’, false);

Archivo de configuración de WordPress con la constante WP_DEBUG establecida como false en la línea 89.

Una vez que lo encuentres, reemplazalo con lo siguiente:

define( 'WP_DEBUG', true );

define( 'WP_DEBUG_DISPLAY', false );

define( 'WP_DEBUG_LOG', true );

Esto creará un archivo debug.log, que puedes encontrar en el directorio /wp-content/. Asegúrate simplemente de cambiar el valor de WP_DEBUG de vuelta a false cuando hayas terminado de solucionar problemas.

5.Revisa Si Hay un “Error al Establecer Una Conexión con La Base de Datos”

Si tu error se debe a un problema al establecer una conexión con la base de datos, tu sitio no solo estará fuera de línea para los visitantes, sino que tampoco podrás acceder al panel de administración de WordPress.

Varios factores podrían ser responsables de esto:

  • Credenciales de inicio de sesión de la base de datos incorrectas.
  • Una base de datos del sitio web corrupta.
  • Un archivo de instalación del sitio web corrupto.

Comencemos con las credenciales incorrectas de inicio de sesión, ya que esta es una causa común del error de conexión con la base de datos. Si eres usuario de DreamHost, puedes encontrar tus credenciales de base de datos en tu panel. Incluso si usas un host diferente, es probable que sigas un procedimiento similar a este.

Dirígete a “Bases de datos MySQL” y encuentra la que corresponde a tu sitio web en la sección “Base(s) de datos en este servidor“. Aquí encontrarás el nombre de tu base de datos bajo el encabezado “Base de datos“. El nombre de usuario se muestra en la columna “Acceso de usuarios“.

Para encontrar la contraseña, haz clic en el nombre de usuario. En la siguiente pantalla, desplázate hacia abajo y haz clic en el botón “Mostrar” junto al campo de la contraseña.

A continuación, querrás comparar estas credenciales con las que se encuentran en tu archivo wp-config.php.

Como recordarás del paso anterior, puedes acceder a este archivo en el directorio principal de tu sitio a través de SFTP. Encuentra el archivo con el nombre de tu sitio y localiza el archivo wp-config.php dentro. Abre o descarga el archivo y verifica que la información bajo “Configuración de MySQL” coincida con lo que encontraste en tu panel.

Configuración de la base de datos de WordPress con definiciones de variables para el nombre de la base de datos, nombre de usuario y contraseña.

¿Y qué sucede si tu base de datos está corrupta?

Puedes repararla rápidamente volviendo a phpMyAdmin. Inicia sesión y haz clic en tu base de datos en el panel izquierdo. Selecciona todas las tablas en la base de datos utilizando la casilla “Marcar todo” debajo de ellas. En el menú desplegable a la derecha, bajo “Mantenimiento de tablas“, selecciona “Reparar tabla“. Antes de continuar, asegúrate de tener una copia de seguridad funcional (ver paso 3).

Finalmente, veamos cómo manejar un archivo de instalación del sitio web corrupto. Volviendo a nuestro sitio de WordPress como ejemplo, comienza descargando una nueva copia de WordPress y descomprimiendo el archivo.

A continuación, accede a los archivos de tu sitio a través de SFTP y elimina la carpeta wp-content y el archivo wp-config-sample.php.

Finalmente, carga el resto de los archivos a tu sitio a través de SFTP, sobrescribiendo los existentes.

¿El resultado? ¡Ahora tienes una instalación nueva y sin corrupciones de WordPress!

Para asegurarte de que esta actualización surta efecto, borra la caché de tu navegador antes de verificar nuevamente tu sitio web en busca del error.

6. Busca Errores de Permisos

Si alguno de tus archivos tiene permisos configurados incorrectamente, puede provocar el error interno del servidor 500. Nuevamente, puedes verificar y cambiar estos permisos usando SFTP.

Dentro del archivo con el nombre de tu sitio, haz clic derecho en cualquier archivo y selecciona “Permisos de archivo” (esto se llama CHMOD con un icono de llave junto a él en DreamHost) para abrir una nueva ventana de diálogo. En esta ventana, puedes verificar y, si es necesario, establecer nuevos permisos para el archivo.

Menú con opciones para abrir, descargar, copiar, renombrar, eliminar, etc. CHMOD seleccionado bajo wp-content.

Normalmente, querrás establecer los archivos en 644 y los directorios y ejecutables en 755.

Si no estás seguro sobre los valores correctos, deberías consultar con tu proveedor de alojamiento.

7. Aumenta el Límite de Memoria de PHP

Otra razón por la que podrías ver el error interno del servidor 500 es si has superado el límite de memoria de PHP de tu servidor. Hay varias formas de aumentar este límite, y todas implican el uso de SFTP.

Antes de intentar aumentar tu límite de memoria, puede que quieras comenzar viendo cuál es el límite actual.

Para sitios web de WordPress, puedes hacer esto a través del panel de administración de WordPress. Ten en cuenta que, con algunas variaciones del error 500, es posible que no puedas acceder al panel de administración. Si ese es el caso, puede que tengas que omitir este paso.

Desde tu panel de WordPress, navega a Herramientas > Salud del sitio.

El menú "Herramientas" de WordPress con la opción "Salud del sitio" resaltada en el menú desplegable.

Haz clic en Información en la parte superior de la pantalla para llegar a la página de Información de Salud del Sitio, y desplázate hacia abajo hasta la sección de Servidor. Haz clic para ver tu límite de memoria de PHP.

La configuración del servidor de WordPress incluye la arquitectura del servidor, servidor web, versión de PHP, etc. Se ha seleccionado un límite de memoria PHP de 256 MB.

Para aumentar el límite de memoria de PHP, hay algunos archivos que puedes editar. Uno de ellos es el archivo .htaccess, que normalmente se encuentra en el directorio raíz de tu sitio y al que puedes acceder a través de SFTP. (Nota: Los planes de alojamiento que utilizan Nginx pueden no usar un archivo .htaccess. En ese caso, puedes omitir este paso).

Abre el archivo y agrega el siguiente código:

php_value memory_limit xxxM

Puedes reemplazar “xxx” con la cantidad deseada de memoria. Por lo general, 256M es suficiente.

También puedes aumentar tu límite de memoria editando tu archivo php.ini. Deberías poder encontrar este archivo también en tu directorio raíz. Si no es así, puedes crear uno. Agrega o actualiza su código a lo siguiente:

memory_limit = xxxM

Una vez que edites tu archivo php.ini, asegúrate también de ajustar tu archivo wp-config.php. Aunque estos límites son técnicamente separados, el límite de PHP no puede ser inferior al límite de memoria de WP.

Para solucionar esto, agrega el siguiente código en la parte superior de tu archivo wp-config.php:

define(‘WP_MEMORY_LIMIT’, ‘xxxM’);

Si esto resuelve el error 500, tu siguiente tarea será averiguar qué está causando el agotamiento del límite de memoria. Podría ser un plugin o tema problemático, si estás usando WordPress. Para obtener ayuda para encontrar los diagnósticos exactos del servidor, puede que quieras contactar a tu proveedor de alojamiento.

8. Verifica Problemas con Tu Archivo .htaccess

El archivo .htaccess que hemos mencionado varias veces es uno de los archivos principales de tu sitio web. Este archivo contiene las reglas de tu servidor, por lo que también podría estar causando el error HTTP 500.

Si tu archivo .htaccess se ha corrompido, debes proceder a crear uno nuevo.

Comienza iniciando sesión en tu sitio a través de SFTP y encuentra tu archivo .htaccess. Cambia el nombre del archivo a .htaccess_old.

Ahora, crea un nuevo archivo .htaccess en tu editor de texto y pega lo siguiente:

# BEGIN WordPress

RewriteEngine On

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

RewriteBase /

RewriteRule ^index.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

# END WordPress

Sube tu archivo .htaccess recién creado a tu sitio web. Después de eso, actualiza tu navegador y verifica si aparece el mensaje de error.

9. Busca Errores de Codificación o Sintaxis en tu Script CGI/Perl

Si estás ejecutando scripts de Interfaz Común de Puerta de Enlace (CGI), cualquier error de codificación o sintaxis que hayas cometido podría provocar un error 500. Para descubrir posibles problemas con tus scripts CGI, inicia sesión en tu sitio utilizando Secure Shell (SSH). Así es cómo hacerlo con DreamHost.

Una vez que hayas iniciado sesión, puedes solucionar problemas con tu CGI con este comando:

[server]$ ./cgi_name.cgi

En este caso, el terminal debería devolver un mensaje de error general y el número de línea donde se encuentra el problema. A partir de ahí, tú o tus recursos de desarrollo pueden trabajar en la solución.

Cuando trabajas con CGI, hay algunas mejores prácticas que debes tener en cuenta para evitar problemas.

Primero, es recomendable utilizar un editor de texto plano para asegurarte de mantener el formato ASCII. Cuando subas scripts, también deberías poder seleccionar el modo ASCII en tu cliente FTP.

Ventana de configuración para transferencia FTP. Bajo "Tipo de transferencia predeterminado", se ha marcado ASCII.

Finalmente, si es necesario, súbelos al directorio cgi-bin en tu servidor.

Luego, puedes verificar los permisos de tus archivos una vez que los hayas subido.

10. Finalmente, Consulta a tu Proveedor de Alojamiento Web sobre Posibles Problemas del Servidor

Si todo lo demás falla, podría haber un problema real con el servidor, que solo tu proveedor de alojamiento puede confirmar. Desafortunadamente, si el servidor de tu proveedor está experimentando un problema, es posible que tengas que esperar mientras el sitio web esté fuera de línea.

Si eres cliente de DreamHost, puedes consultar la página de estado de DreamHost. Este recurso te proporciona toda la información sobre cada uno de nuestros servicios.

Si encuentras algún problema mientras intentas reparar el error interno del servidor 500 como cliente de DreamHost, siempre puedes comunicarte con nuestro Equipo de Soporte Técnico. ¡Están listos y esperando para ayudarte!

Si has seguido los consejos de esta guía, ya tendrás mucha información valiosa para ayudar al técnico a resolver tu problema aún más rápido.

¿Con Qué Otros Errores De Sitios Web Podemos Ayudarte?

¿Quieres aprender más sobre cómo solucionar errores, tanto de servidor como de otros tipos, en tu sitio web? Hemos reunido muchos tutoriales sobre cómo reparar los tipos más comunes de errores de los que escuchamos hablar.

Aquí tienes una amplia selección de recursos para ti:

Mantén Tu Sitio Actualizado con DreamHost

Si bien tener que resolver un error interno del servidor 500 no es precisamente divertido, esperamos que hayas visto que tampoco es tan doloroso como podrías imaginar. Con un poco de paciencia y los consejos que hemos proporcionado, deberías poder avanzar y poner tu sitio web en línea nuevamente.

Encontrar errores como este es inevitable como propietario de un sitio web. Y la verdad es que, sin importar cuán hábil seas, siempre será más fácil volver a estar en funcionamiento cuando tienes un proveedor de alojamiento realmente útil y confiable. (Esos somos nosotros).

DreamHost ofrece una variedad de opciones de alojamiento que proporcionan características poderosas para mantener tu sitio seguro y exitoso, además de constructores de sitios web experimentados, administradores y otros profesionales que pueden asegurarse de que tu sitio rara vez se desvíe del camino en primer lugar.

Recibe contenido directamente en tu bandeja de entrada

Suscríbete ahora para recibir todas las últimas actualizaciones, directamente en tu bandeja de entrada.

Jos Velasco es un Consultor Profesional de WordPress en DreamHost. Sus responsabilidades incluyen ayudar con casos avanzados de WordPress, crear material de capacitación e identificar tendencias que afecten a la comunidad de WordPress. En su tiempo libre, disfruta escalar montañas, comer sano y ver películas de drama. Sigue a Jos en LinkedIn: https://www.linkedin.com/in/josvelasco/