Última actualización en junio 13, 2024 por Jérôme Kerviel
El "error interno del servidor 500" puede ser frustrante porque no indica qué ha fallado.
También conocido como "error http 500", puede deberse a varios factores, como conflictos entre plugins o temas de WordPress, haber alcanzado el límite de memoria PHP, un error .htaccess archivo, una mala configuración del servidor o permisos incorrectos de archivos y directorios, entre otras razones.
En este artículo, le ayudaré a identificar la causa exacta del error en su sitio de WordPress y le guiaré para solucionarlo.
Causas comunes del error HTTP 500 interno del servidor
Definiciones básicas:
- "HTTP" se refiere al protocolo utilizado para la comunicación entre el cliente (su navegador) y el servidor web.
- "500" es el código de estado que indica un error interno del servidor.
Por lo tanto, el "error interno del servidor HTTP 500" en su conjunto indica que algo inesperado ha ido mal durante la comunicación entre el navegador y el servidor web y que el problema se origina en el lado del servidor. Sin embargo, es probable que no haya nada mal en tu servidor, así que no te preocupes.
En cuanto a la causa real del error, podría haberse producido por alguna de las siguientes cuestiones:
- Plugins mal codificados o temas puede causar conflictos con otros plugins y temas, provocando el error;
- Agotamiento del límite de memoria PHP hace que las operaciones que consumen muchos recursos terminen prematuramente;
- Corrupted .htaccess archivo, un archivo del núcleo de WordPress, debido a configuraciones incorrectas o errores de sintaxis puede interrumpir la capacidad del servidor para procesar correctamente las peticiones, provocando un error HTTP 500 interno del servidor;
- Permisos de archivos modificados puede hacer que el servidor tenga problemas para acceder a los archivos o directorios necesarios para satisfacer una solicitud, provocando así el error;
- En raras ocasiones, incompatibilidad de navegadores puede hacer que el sitio web se abra normalmente en un navegador y arroje errores en otro.
Ahora que tenemos las causas comunes fuera del camino, vamos a ver las mejores maneras de deshacerse de este error:
Cómo solucionar el error HTTP 500 interno del servidor en su sitio web
Tratar con el error interno del servidor en su sitio web es una receta para un mal día con seguridad, ¡pero esperemos que lo arreglemos juntos en poco tiempo!
Aquí está cómo eliminar el error si lo ha encontrado en su propio sitio web (con WordPress):
1. Borra la caché de tu navegador
La caché es el proceso de almacenar datos de un sitio web en el navegador del usuario para un acceso más rápido. Al almacenar en la caché los datos a los que se accede con más frecuencia, las visitas posteriores al sitio web pueden evitar ciertos procesos que consumen mucho tiempo, como la recuperación de datos del servidor o la representación de elementos complejos de la página. El resultado es una mayor velocidad de carga de la página y una mejor experiencia del usuario.
El mayor inconveniente del almacenamiento en caché es que puede acabar mostrando contenidos obsoletos a los visitantes. Por lo tanto, el error HTTP 500 interno del servidor que aparece en el sitio web que está navegando puede ser una versión almacenada en caché del sitio. El error podría haber sido un fallo temporal y podría haber sido eliminado automáticamente.
Esta es la razón por la que borrar la caché del navegador es el paso más fácil y también muy a menudo el más eficaz para "arreglar" el error HTTP 500 interno del servidor. Digo fijación de entre comillas, ya que en realidad no lo estás arreglando: sólo estás actualizando tu propio navegador para poder acceder al sitio web sin el error.
2. Compruebe el registro de depuración
El registro de depuración es una herramienta integrada en WordPress que contiene información detallada sobre los errores y advertencias que se producen en un sitio web de WordPress.
El registro de depuración de su sitio web debería contener detalles sobre el "error interno del servidor HTTP 500" y podría indicarle el origen del error. Conocer la causa es la mitad de la batalla ganada.
Por defecto, el registro de depuración de WordPress está desactivado para evitar mostrar información potencialmente sensible a los visitantes. Tendrá que activarlo primero.
Con el error interno del servidor que se muestra en su sitio web, es poco probable que tenga acceso a su panel de WordPress. Por lo tanto, tendrá que ir al backend de su sitio web para insertar un fragmento de código en la sección wp-config.php y activar el registro de depuración.
Puede hacerlo conectándose a su sitio mediante FTP o a través de su cuenta de alojamiento. Para utilizar FTP, lea esta guía. A continuación, voy a mostrarte cómo utilizar las herramientas disponibles en tu cuenta de alojamiento.
Acceda a su perfil/cuenta de alojamiento y busque un enlace a cPanel - es un panel de gestión de alojamiento que utilizan la mayoría de los alojamientos web. Una vez allí, vaya a la sección Gestor de archivos:
Dentro del Gestor de Archivos, seleccione la opción public_html y localice la carpeta wp-config .php archivo.
Haga clic con el botón derecho en el archivo y seleccione la opción Editar opción. El archivo se abrirá en una página diferente.
Desplácese hasta el final del archivo de configuración y pegue el siguiente código justo antes de esta línea: /* ¡Eso es todo, deja de editar! Feliz blogueo. */
:
define( 'WP_DEBUG', true);
define( 'WP_DEBUG_LOG', true);
Guardar los cambios y salir del archivo.
A continuación, vaya a public_html → wp-content → debug.log.
Abra el archivo haciendo clic con el botón derecho y seleccionando la opción Abrir opción.
Busque el registro de error interno del servidor 500 y lea los detalles del error.
Si ha encontrado la causa real, pase a la solución correspondiente en las secciones siguientes. Si no es así, empiece a aplicar las siguientes soluciones una a una.
3. Desactive plugins
Abra su cuenta de alojamiento y vaya a cPanel → Administrador de archivos → public_html → wp-content → plugins..
Haga clic con el botón derecho del ratón en en la carpeta plugins, seleccione Cambie el nombre dey cambie el nombre de la carpeta a "plugins-off." Desactivará todos los plugins.
La desactivación ayudará a comprobar si un conflicto de plugins estaba causando el error. Si ya no ves un error en tu sitio web, entonces se confirma la teoría del conflicto de plugins.
A continuación, vuelva a nombre original de la carpeta para reactivar todos sus plugins. Esto hará que vuelva el error. No se preocupe.
Abrir la carpeta de plugins y empieza a desactivar los plugins uno a uno - cambia el nombre de cada carpeta de plugins individualmente. Cada vez que desactives un plugin, comprueba si el error ha desaparecido. En algún momento, el error desaparecerá y sabrás que el plugin que acabas de desactivar lo estaba causando.
Elimine ese plugin haciendo clic con el botón derecho del ratón en la carpeta del plugin y seleccionando la opción Borrar opción.
4. Desactive su tema
Para desactivar tu tema actual, necesitas cambiar a uno diferente. Le sugiero que cambie al tema predeterminado de WordPress que ya debería tener presente en su sitio; probablemente esté desactivado.
Para ello, conéctate a la base de datos mediante phpMyAdmin (o la herramienta que utilice tu proveedor de alojamiento) desde el panel de control del alojamiento. Una vez dentro, selecciona la base de datos de WordPress y busca el archivo wp_opciones (puede tener un prefijo diferente) en el menú de la derecha.
Abra la tabla y haga clic en Buscar en en el menú de navegación de la parte superior de la pantalla. Escriba "plantilla" en el Valor que corresponde al campo nombre_opción y haga clic en Vaya a.
Esto devolverá una única entrada de la base de datos wp_opciones tabla. Esa entrada le dice a WordPress qué tema usar; el tema es twentytwenty en nuestro ejemplo.
Haga doble clic en el nombre del tema en valor_opción y puedes cambiarlo por otro. Esto tiene que ser un tema que está instalado en el sitio web o se encontrará con más errores.
Algunas apuestas seguras para la mayoría de los sitios son las opciones por defecto del tema, tales como twentytwentythree o twentytwentytwo. Cuando haya terminado, compruebe su sitio web para ver si persiste el error HTTP 500 interno del servidor.
5. Vuelva a cargar los archivos principales
Visite wordpress.org y descargue la última versión de WordPress en su ordenador local. Siguiente, descomprimir el archivo (esto es IMPORTANTE).
Vuelva a su cuenta de alojamiento y entre de nuevo en cPanel → Administrador de archivos → public_html. Haga clic en Cargar para cargar la nueva carpeta de WordPress.
Se le informará de que está a punto de sobrescribir los archivos. Esto está bien - es exactamente lo que queremos. Concede el permiso y deja que se carguen los nuevos archivos.
El proceso tardará unos segundos en completarse. Compruebe si el error 500 ha desaparecido.
6. Regenerar .htaccess archivo
Para regenerar el .htaccess vaya a public_html → .htaccess. Haga clic con el botón derecho en el archivo y pulse el botón Descargar para descargar el archivo existente a su ordenador local como copia de seguridad.
Vuelva a hacer clic con el botón derecho y pulse el botón Borrar para eliminar el archivo.
Haga clic en el botón +Archivo en la barra de herramientas de la parte superior de la pantalla. Escriba ".htaccess" en el campo de entrada Nuevo nombre de archivo.
Haga clic en Crear nuevo archivo. Haga clic con el botón derecho en el archivo recién creado para Editar it. Añade el siguiente código:
# BEGIN WordPress
RewriteEngine Activado
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
El código anterior procede de plantilla oficial del .htaccess archivo que utiliza WordPress.
Guardar el archivo antes de cerrar la ventana.
7. Aumentar el límite de memoria PHP
PHP es un lenguaje de programación que permite que tu sitio WordPress funcione. Todas las operaciones que resultan en contenido mostrándose en tu sitio son operaciones PHP (estoy simplificando un poco).
Estas operaciones PHP suelen requerir algo de tiempo y memoria para ejecutarse. Sin embargo, si su servidor no ha asignado suficientes recursos a esas operaciones, es posible que vea un error HTTP 500 interno del servidor.
Aumentar el límite de memoria es una buena forma de solucionar el error en muchos casos.
Puede hacerlo desde su panel de alojamiento. Navegue de nuevo a cPanel para hacer lo necesario.
En cPanel, busque una opción llamada Versión PHP o Selector PHP. Este nombre puede variar ligeramente de un host a otro. Por ejemplo, en Namecheap, la opción que debe buscar se llama Seleccione la versión de PHP.
A continuación, introduzca Opciones PHP o Opciones.
Allí, puede cambiar el valor junto a limite_memoria. Sólo tienes que seleccionar un valor que sea un nivel superior al que tienes seleccionado actualmente.
Recuerde pulsar el botón Guardar botón.
8. Pida ayuda a su proveedor de alojamiento
¿No ha funcionado nada? Probablemente ha llegado el momento de ponerse en contacto con su proveedor de alojamiento y buscar ayuda.
Cuéntales todos los pasos que has dado para eliminar el error. Tu proveedor de alojamiento debería tener algún truco más bajo la manga.
Conclusión sobre el error HTTP 500 interno del servidor
Este error es uno de los más frustrantes que te vas a encontrar en tu sitio web WordPress.
No te dice por qué se ha producido, ni qué hacer con él, además de que hay numerosas causas que podrían haberlo desencadenado.
Dado que la causa exacta del error es siempre imprecisa, puede probar las siguientes soluciones una a una y ver cuál de ellas elimina el error:
- Borrar la caché del navegador
- Compruebe el registro de depuración de WordPress
- Desactivar plugins y temas
- Volver a cargar los archivos principales de WordPress
- Regenerar el .htaccess archivo
- Aumentar el límite de memoria PHP
Si nada funciona, lo mejor es pedir ayuda directamente al proveedor de alojamiento.
Si tiene alguna pregunta sobre el "error interno del servidor HTTP 500", háganoslo saber en la sección de comentarios a continuación.