Solucionando el Temido ‘Error Interno del Servidor’ en WordPress (2021)
- Por Colin Recién llegado
- Última actualización: Marzo 26, 2021
Todos hemos estado allí, un sitio que funcionaba perfectamente bien hace unos segundos, de repente decide lanzar un ataque y escupe un error interno del servidor. Si tienes suerte, el administrador de WordPress aún funciona, pero, en algunos casos, incluso eso puede negarse a cooperar. En este artículo, explicaremos qué es un error interno del servidor y, lo que es más importante, cómo solucionarlo.
Importante: Siempre haga una copia de seguridad completa de su sitio (incluso si no funciona como debería) antes de realizar cualquier cambio, ¡mejor prevenir que lamentar!
Vamos a empezar.
¿Qué es un Error Interno del Servidor?
Los errores internos del servidor son molestos tanto para los usuarios como para los desarrolladores porque no proporcionan ninguna información sobre la raíz del problema, solo le dicen que hay uno. Imagínese si fuera al médico y dijera que sentía dolor, pero se negara a revelar dónde estaba ese dolor, ¡haría que fuera muy difícil para el médico tratarlo! Esa es la dificultad con un error interno del servidor: no hay indicación de dónde proviene el problema.Error interno del servidor
(
Además, el nombre ‘error interno del servidor’ puede ser engañoso, porque, en casi todos los casos, su host (y/o servidor) no tiene la culpa. Si echa un vistazo a las especificaciones HTTP, puede ver que un error interno del servidor significa lo siguiente:
El servidor encontró una condición inesperada que le impidió cumplir con la solicitud.
No hay nada malo con el servidor en sí, simplemente se encontró con algo que no puede descubrir.
Para averiguar qué está pasando, tendrá que hacer un poco de solución de problemas y prueba y error. Al analizar sistemáticamente las cosas que podrían estar saliendo mal, podrá averiguar qué está causando el problema y, lo que es más importante, cómo solucionarlo.
Cómo corregir el error interno del servidor de WordPress 500
Le recomendamos que realice estos pasos en orden. Es decir, comience en el paso # 1 y avance a través de la lista. En algunas situaciones, te diremos que saltes adelante en función de los resultados de uno de los pasos. Pero, en general, ir de arriba a abajo!
Más allá de eso, solo un recordatorio de que siempre recomendamos hacer copias de seguridad de su sitio antes de realizar cualquiera de los cambios en esta lista. Si no puede acceder a su panel de WordPress para usar un complemento de copia de seguridad, aún debería poder crear una copia de seguridad a través de su panel de hosting: solicite ayuda al soporte de su anfitrión si no está seguro de cómo.
Ahora, vamos a arreglar fixing
Habilitar depuración
El primer paso debería ser al menos tratar de darle sentido al error, ¡podría tener suerte! Dependiendo de cómo su servidor maneje los errores, lo que está viendo puede no ser en realidad un error de servidor en absoluto. En su lugar, podría ser un error en el código de tu sitio (normalmente el código de un plugin o tema).
Para ver si este es el caso, deberá editar el archivo wp-config.php
en el directorio raíz de su sitio web:
- Descargue el archivo (a través de FTP).
- Ábralo (usando un editor de texto).
- Buscar
WP_DEBUG
.
Si la línea ya existe, cambie false
a true
y vuelva a cargar el archivo en el servidor.
Si esta línea no está en su archivo de configuración, créela agregando la siguiente línea de código en algún lugar por encima de la línea que dice /* That's all, stop editing! Happy blogging. */
:
define( "WP_DEBUG", true );
Vuelva a cargar su sitio web y vea si el error cambia. Si lo hace, y ahora ves un mensaje de «error fatal» que apunta a una línea de código específica en un archivo específico, entonces estás viendo un error de código relativamente simple. Asumiendo que dicho error se origina en un plugin o tema, necesitarás deshabilitar el producto ofensivo y/o trabajar en solucionar el problema tú mismo (o hacer que alguien más lo eche un vistazo si no eres capaz de averiguar lo que está sucediendo por tu cuenta).
Nota: Una vez que haya terminado con este paso, asegúrese de cambiar el valor WP_DEBUG
a false
, para que no deje activado accidentalmente el modo de depuración. De forma predeterminada, mostrará mensajes de depuración en todo el sitio, lo que es confuso para sus visitantes y un riesgo potencial de seguridad.
Compruebe si su panel de WordPress funciona
El siguiente paso es probar si puede acceder o no a su panel de WordPress de backend.
Visite el administrador de su sitio web en http://yoursite.com/wp-admin/
. Si esta página se carga correctamente y le permite iniciar sesión, puede estar razonablemente seguro de que el problema es con un complemento o con su tema. Si tu administrador se carga, continúa con el paso dos. Si no es así, pasa al paso cuatro.
Deshabilitar todos los complementos
A continuación, es hora de probar si el problema proviene de un complemento. Casi no hay forma de que un complemento pueda causar problemas si está deshabilitado, por lo que la forma más fácil de probar esto es deshabilitar todos los complementos a la vez. Esto no eliminará sus complementos, ni le hará perder ninguno de sus datos (que todavía están almacenados de forma segura en su base de datos). Lo que hará es desactivar la ejecución de su código, lo que solucionará el problema si el código de un complemento está desencadenando el error interno del servidor.
Si tu panel de WordPress funciona bien, puedes desactivar los complementos siguiendo estos pasos:
- Ve al área de complementos en tu panel de WordPress.
- Use la casilla de verificación para seleccionar todos los complementos.
- Use el menú desplegable Acciones masivas para desactivarlas.
- Haga clic en Aplicar.
Si no puede desactivar los complementos a través de su panel de control por alguna razón, también puede desactivarlos a través de FTP siguiendo estas instrucciones:
- Conéctese al servidor de su sitio de WordPress a través de FTP.
- Vaya a la carpeta
wp-content
. - Cambie el nombre de la carpeta
plugins
aplugins-deactivated
.
Si ha desactivado todos los complementos y su sitio aún no se carga, vaya al paso tres.
Si su sitio está en funcionamiento, el siguiente paso es averiguar qué complemento específico está causando problemas.
Para hacer esto, deberá reactivar sus complementos uno por uno. Siga comprobando el error interno del servidor después de activar cada complemento. Cuando hayas encontrado al culpable, puedes decidir qué hacer con él. El mejor curso de acción es mantener el plugin desactivado y notificar al autor de inmediato. Si se trata de un complemento de misión crítica, probablemente deberías buscar una alternativa mejor y más estable.
Nota: Si desactivaste tus complementos a través de FTP, tendrás que cambiar el nombre de la carpeta al nombre original de plugins
antes de empezar a reactivar los complementos.
En algunos casos muy raros, ejecutar software antiguo como PHP 5.3 puede causar problemas. Antes de reemplazar un complemento que ha demostrado ser confiable hasta ahora, eche un vistazo al paso siete.
Cambiar a un tema predeterminado
Si desactivar los complementos no solucionó el problema, el tema también podría ser el culpable. Puede verificar esto cambiando a un tema de WordPress predeterminado. Recomendamos usar Twenty Twenty, que es el último tema predeterminado.
Si aún puedes administrar temas desde tu panel de WordPress, puedes hacerlo yendo a Apariencia – > Temas. Si ya eliminó el tema predeterminado, puede volver a instalarlo desde WordPress.org.
Si no puedes cambiar de tema desde tu panel de WordPress, también puedes hacerlo a través de FTP siguiendo estas instrucciones:
- Conéctese al servidor de su sitio de WordPress a través de FTP.
- Vaya a la carpeta
wp-content/themes
. - Si no tiene instalado el tema Twenty Twenty, puede instalarlo cargando la carpeta del tema desde la que lo descarga WordPress.org (asegúrese de extraer el archivo ZIP antes de cargar la carpeta).
- Cambie el nombre de la carpeta de su tema actual a
-deactivated
.
Cuando cambie el nombre de la carpeta de su tema activo, WordPress volverá automáticamente al tema predeterminado (siempre y cuando el tema predeterminado esté instalado).
Si cambiar a Twenty Twenty resuelve el problema, puede volver a habilitar todos los complementos y ponerse a trabajar para encontrar el problema en el código de su tema.
Si su tema es del repositorio de temas oficial o de una tienda de temas independiente, debe informar al autor lo antes posible. Si, por otro lado, es tu propio tema, necesitarás que un desarrollador te ayude, porque estos errores a menudo pueden ser muy difíciles de encontrar, incluso para codificadores experimentados.
En algunos casos muy raros, ejecutar software antiguo como PHP 5.3 puede causar problemas. Antes de pasar horas tratando de encontrar un error, o pagar cientos de dólares a un desarrollador, eche un vistazo al paso siete.
Aumente su límite de memoria
Si su sitio web está utilizando demasiada memoria, definitivamente provocará un ajuste, lo que posiblemente resulte en un error interno del servidor de 500. En muchos casos, esto es un signo de un tema o plugin mal codificado. Se puede remediar rápidamente aumentando el límite de memoria, pero esta no es una forma segura de resolver el problema y no llegará a la raíz del mismo.
Puede intentar aumentar manualmente su límite de memoria. Sin embargo, tenga en cuenta que su servidor o su cuenta pueden tener una cantidad fija de memoria asignada y no podrá aumentar su límite de memoria más allá de eso.
Hay algunas maneras de aumentar tu límite:
-
wp-config.php
archivo -
PHP.ini
archivo (si tiene acceso, no puede) -
.htaccess
archivo
Para todos estos archivos, deberá editarlos conectándose a su servidor a través de FTP y agregando un fragmento de código (o cambiando el valor de un fragmento de código existente si el fragmento ya existe). Esto es lo que debe agregar:
wp-config.archivo php
Agregue el siguiente fragmento de código encima de la línea que dice /* That's all, stop editing! Happy blogging. */
:
define('WP_MEMORY_LIMIT', '256M');
PHP.ini
Busque la línea que dice memory_limit = M
y cambie el número a 256
. Por ejemplo, memory_limit = 256M
.
.archivo htaccess
Agregue la siguiente línea:
php_value memory_limit 256M
Alternativamente, hable con su anfitrión para obtener instrucciones más específicas; algunos estarán más que felices de aumentar su límite de memoria sin casi ningún alboroto de su parte.Depuración
.Problemas de htaccess
Si su host utiliza el servidor Apache (lo que hace la mayoría de los hosts de WordPress, especialmente en el extremo del presupuesto), el archivo .htaccess
es un archivo de configuración que habilita algunas funcionalidades relativamente avanzadas. Al usarlo, puede habilitar la compresión gzip, cambiar el tamaño máximo de carga, configurar redirecciones y hacer todo tipo de cosas útiles. WordPress también utiliza este archivo para administrar los enlaces permanentes de su sitio, entre otras características.
ya Hemos escrito una guía sobre cómo editar el .archivo htaccess, pero vale la pena reiterar que este es un área sensible que requiere precaución. Un error tipográfico, un espacio olvidado o una cita sin cerrar, por ejemplo, podría causar fácilmente un error interno del servidor de 500, lo que paralizaría su sitio web, incluido su administrador.
Hay una forma sencilla de comprobar si este archivo tiene errores:
- Conéctese a su servidor a través de FTP y encuentre el archivo
.htaccess
, que se encuentra en la carpeta raíz. - Haga una copia de seguridad del archivo existente descargándolo a su computadora.
- Una vez que haya realizado una copia de seguridad del archivo original, elimine la copia de
.htaccess
que está en su servidor.
Si su sitio web vuelve a estar en línea, el problema es con su archivo .htaccess
. Si no tienes reglas .htaccess
personalizadas (por ejemplo, redirecciones personalizadas), puedes forzar a WordPress a generar un nuevo archivo .htaccess
yendo a Ajustes -> Enlaces permanentes y haciendo clic en Guardar (no necesitas cambiar ninguna configuración, simplemente haz clic en el botón Guardar con la configuración existente).
Si tiene reglas personalizadas, puede revisar el archivo .htaccess
línea por línea para ver cuándo se cae su sitio. Una vez que haya encontrado la línea ofensiva, asegúrese de que no tenga ningún texto innecesario (tal vez una cita sin cerrar o algo similar). Si no puede encontrar el problema, probablemente solo desee eliminar la línea. El hecho de que tu sitio web esté completamente caído es mucho peor que una línea .htaccess
faltante: pregunta en los foros si necesitas más ayuda.
Para ahorrar tiempo, también puede usar esto de forma gratuita .comprobador de sintaxis htaccess, que puede detectar automáticamente muchos errores / errores tipográficos de bajo nivel.
Reinstalar WordPress
Es extremadamente raro, pero es posible que tenga algunos archivos dañados en el núcleo de WordPress. Esto no es nada de lo que preocuparse, por ejemplo, puede que algo haya salido mal cuando su servidor estaba copiando los archivos requeridos. Volver a cargar los archivos principales de WordPress puede resolver su problema.
Te mostramos cómo reinstalar los archivos principales de WordPress:
- Descargar una copia nueva de WordPress desde WordPress.org.
- Extrae el archivo ZIP.
- Elimine la carpeta
wp-content
y el archivowp-config-sample.php
. Además, asegúrese de que no haya un archivowp-config.php
(y elimine uno si lo hay). Este archivo no debería estar ahí, pero siempre es bueno volver a comprobarlo. - Conéctese a su servidor a través de FTP.
- Cargue los archivos y carpetas restantes en la carpeta raíz.
- Cuando su programa FTP lo solicite, dígale que sobrescriba todos los archivos.
Comprobar si hay problemas con la versión de PHP
Mientras que las versiones antiguas de PHP generalmente no causan el error interno del servidor, puede valer la pena hablar con su anfitrión y pedirle que le dé una versión más nueva antes de gastar tiempo y dinero valiosos. PHP 7 ha dejado en desuso algunas características anteriores, por ejemplo, un complemento puede usar una función que no está disponible en versiones anteriores de PHP, y así sucesivamente.
Pregunte a su host qué versión de PHP está ejecutando. A partir de septiembre de 2020, PHP 5.6 ya no recibe ninguna actualización (ni siquiera soporte de seguridad básico) — no lo acepte si su host está ejecutando su sitio en una versión tan antigua. Al menos debería tener alguna variante de PHP 7 en ejecución. Idealmente, querrá estar en PHP 7.3+, ya que PHP 7.0 ya no recibe actualizaciones e incluso PHP 7.2 dejará de recibir correcciones de seguridad a finales de 2020.
¿Nada funciona? Prueba de Problemas compuestos
Aunque es poco probable que tengas dos problemas a la vez, puede suceder. Es posible que tenga un complemento que esté causando un problema, así como un problema .htaccess
. En este caso, el problema no se resolverá cuando deshabilites todos los complementos y no se resolverá si eliminas tu archivo .htaccess
, solo si haces ambas cosas.
Si ha seguido estos pasos y sigue recibiendo un error interno de servidor de 500, debe comenzar de nuevo y asegurarse de no deshacer ningún cambio. Mantenga sus complementos desactivados, mantenga su tema cambiado a Veinte Veinte, y así sucesivamente.
A través de prueba y error, podrá descubrir la combinación de problemas que están causando problemas.
¿Frustrado Por Lidiar Con Errores? Pruebe el alojamiento administrado de WordPress
Como puede ver, se dedica mucho trabajo a la resolución de problemas de errores comunes de WordPress, como el error de servidor interno 500. Si no desea tener que lidiar con estos problemas usted mismo (y está dispuesto a pagar un poco más por la comodidad), mover su sitio al alojamiento administrado de WordPress podría ser una buena decisión.
Un host de WordPress administrado de alta calidad monitorizará proactivamente estos tipos de errores y los corregirá para que pueda mantener su sitio funcionando. Por ejemplo, el personal de soporte de Kinsta, uno de nuestros hosts de WordPress administrados recomendados, recibe automáticamente notificaciones si su sitio está inactivo debido a un error interno del servidor. Además, debido a que estos anfitriones ofrecen más productos premium, su personal de soporte estará más dispuesto a invertir tiempo en solucionar el problema por usted.
Por supuesto, la desventaja es que definitivamente pagará un poco más de lo que pagaría por un alojamiento compartido barato. Por lo general, un host de WordPress administrado de calidad comienza en alrededor de $30 al mes. Aún así, si valora la tranquilidad, ese precio puede valer la pena, especialmente para un sitio web empresarial donde el tiempo de inactividad significa pérdida de ingresos.
Pensamientos finales
Debido a la vaguedad del mensaje de error interno del servidor, resolverlo puede ser difícil, pero, siguiendo los pasos anteriores, debería poder averiguar eventualmente qué está pasando mal.
Si aún no puede resolver el problema, póngase en contacto con su anfitrión. Enlace a este artículo y hágales saber que ha probado estos pasos, ya que apreciarán el esfuerzo y podrán localizar el problema mucho más rápido.
¿Ha visto algún caso extremo o cosas francamente extrañas sucediendo en relación con este error? ¡Háganoslo saber en los comentarios!