Si te encontraste con errores de timeout en WordPress mientras intentabas actualizar tus plugins, temas o la versión de WordPress, sabés lo frustrante que puede ser este problema. No podés actualizar tu software y puede que ni siquiera entendás de dónde viene el problema, así que no podés solucionarlo.
Este artículo va a ser una guía sobre qué es este problema y cómo podés arreglarlo.
Puntos Clave
- WordPress puede lanzar un error de timeout durante las actualizaciones debido a un límite de tiempo de PHP bajo, un límite de memoria de WordPress bajo, una conexión a internet mala, un servidor sobrecargado o falta de permisos de archivo adecuados.
- Para solucionar el problema, podés desactivar todos los plugins antes de intentar la actualización nuevamente o contactar a tu proveedor de hosting.
- Además, podés realizar arreglos manuales accediendo a los archivos del núcleo de WordPress y aumentando el límite de tiempo de PHP o el límite de memoria de WordPress.
¿Qué Causa los Timeouts en las Actualizaciones de WordPress?
Varios factores pueden hacer que tu sitio lance un error de timeout al actualizar tus plugins, temas o versiones de WordPress. Cuando sucede, puede que veas un mensaje de error como el siguiente: Ha habido un error crítico en tu sitio web
.
La razón más común por la que esto pasa es que tu sitio de WordPress no tiene un límite de tiempo de PHP lo suficientemente largo para realizar la actualización.
PHP es el lenguaje en el que está escrito principalmente WordPress y el límite de tiempo es la cantidad de tiempo asignado para ejecutar un script antes de interrumpir el proceso. En la mayoría de los casos, el límite de tiempo por defecto es de 30 segundos.
Si tu límite de tiempo de PHP por defecto no es suficiente para ejecutar el script de actualización, puede que veas el mensaje de error anterior y la actualización fallará.
Otras Causas Comunes
Además del límite de tiempo de PHP, otros factores pueden resultar en un error de timeout al actualizar, tales como:
- Límite de memoria. PHP también tiene un límite de memoria, que por defecto suele ser de 64 megabytes (MB), pero varía según tu proveedor de hosting y plan. Si este límite es demasiado bajo, puede que no haya suficientes recursos para completar el proceso de actualización.
- Límites de recursos del servidor. Algunos entornos de hosting tienen límites estrictos en el uso de CPU, número de procesos y conexiones a la base de datos. Actualizaciones que consumen muchos recursos pueden causar errores de timeout.
- Conexión a internet mala. Una conexión a internet lenta o inestable entre tu sitio de WordPress y el servidor puede interrumpir el proceso de actualización, llevando a errores de timeout.
- Archivos de actualización grandes. Si la actualización es lo suficientemente grande, puede resultar en un timeout.
- Carga en el servidor de la base de datos. Si el servidor de la base de datos está bajo una carga pesada o no responde lo suficientemente rápido, puede que obtengas un timeout porque las actualizaciones dependen de operaciones en la base de datos.
- Falta de permisos. En casos raros, alguien puede haber editado los permisos de usuario, resultando en la incapacidad de WordPress de actualizar los archivos necesarios y un error de timeout.
Teniendo en mente estas posibles causas, pasemos a lo que podés hacer para evitar que WordPress lance un error de timeout durante las actualizaciones.
Importante: Haz una Copia de Seguridad de Tu Sitio Antes de Arreglar Errores de Tiempo de Espera en WordPress Durante las Actualizaciones
Es fundamental crear copias de seguridad cada vez que vayas a hacer un cambio significativo en tu sitio, como instalar temas, plugins o nuevas versiones de WordPress, o solucionar errores como los tiempos de espera durante las actualizaciones.
Esto te da un punto de retorno al cual podés volver si algo sale mal, permitiéndote revertir consecuencias no deseadas y volver a intentarlo.
Existen varias formas de hacer copias de seguridad, pero usar plugins es uno de los métodos más simples. Nuestro equipo ha utilizado el plugin de copia de seguridad UpdraftPlus, y es muy confiable.
Leé nuestra guía de copias de seguridad para un paso a paso sobre cómo respaldar tu sitio de WordPress.
6 Métodos para Arreglar el Error de Tiempo de Espera de WordPress Durante las Actualizaciones
Método #1: Desactiva Todos los Plugins y Vuelve a Intentar la Actualización
El primer método es de los más simples, ya que solo tenés que desactivar todos los plugins antes de actualizar. Acá tenés una guía paso a paso.
Desde el panel de administración, andá a Plugins > Plugins Instalados.
Hacé clic en el cuadro blanco vacío en la parte superior para seleccionar todos los plugins.
Si estás actualizando un plugin, desmarcá ese plugin específico.
Ahora andá al menú de Acciones masivas y seleccioná Desactivar.
En este punto, todos los plugins excepto el que estás tratando de actualizar estarán desactivados.
Ahora, podés volver al panel de administración y navegar a Escritorio > Actualizaciones para realizar la actualización, ya sea de un tema, plugin o versión de WordPress.
Desactivar todos los plugins de WordPress antes de las actualizaciones puede ayudarte a evitar errores de tiempo de espera porque a veces uno de tus plugins puede ser incompatible con la actualización que estás realizando, colapsando el proceso. Desactivar todos los plugins puede ayudarte a sortear la incompatibilidad.
Método #2: Contactá a Tu Proveedor de Hosting
Si probaste el primer método y no funcionó, lo mejor que podés hacer es contactar a tu proveedor de hosting, especialmente si no tenés las habilidades técnicas para solucionar el problema por tu cuenta. Lo más probable es que tu proveedor sepa cuál es el problema y tome las medidas necesarias para solucionarlo.
Por ejemplo, el equipo de soporte técnico de tu proveedor puede aumentar el límite de tiempo para los scripts PHP, detectar plugins incompatibles o descubrir otro problema que no conocías.
Además de brindar ayuda a los propietarios de sitios que pueden no tener la experiencia técnica para solucionar el problema, contactar a tu proveedor puede ser la única forma de resolver el problema en algunos casos.
Eso es porque algunos proveedores, sobre todo si tenés un plan de hosting compartido, no permiten que los clientes hagan los cambios que solucionarían el problema. Tenés que contactar al soporte técnico, y ellos lo harán.
Método #3: Aumentar el Límite de Tiempo de PHP Manualmente
Si tenés algunas habilidades técnicas y querés intentarlo vos mismo, la primera solución que deberías probar es aumentar el límite de tiempo de PHP, ya que es la causa más común de errores de timeout durante las actualizaciones.
Estas son las 3 formas de editar manualmente el límite de tiempo de PHP para ejecutar scripts. Todas tienen el mismo efecto, así que es cuestión de ver cuál te resulta más cómoda usar.
Editar el Archivo .htaccess
Editar el archivo .htaccess
es probablemente el método más fácil para aumentar manualmente los límites de tiempo de PHP, porque muchos plugins de SEO te permiten acceder y modificarlo rápidamente.
En este caso, usaremos Yoast SEO porque es el plugin de SEO más popular, y quizás ya lo tengas. Después de instalar y activar Yoast SEO, andá a Yoast > Herramientas desde el panel de control.
En la pantalla de Herramientas, bajá hasta que veas el enlace Editor de Archivos y hacé clic en él.
Ahora bajá hasta que veas un cuadro de texto etiquetado como archivo .htaccess.
Todo lo que tenés que hacer para aumentar el límite de tiempo de PHP es agregar la línea max_execution 300
debajo de </IfModule>
. Después de tu edición, la parte inferior del archivo debería verse algo así:
</IfModule>
max_execution 300
#FIN WordPress
Ahora el límite de tiempo de PHP es de 300 segundos en lugar de 30 segundos.
Si no usás Yoast SEO, recordá que otros plugins de SEO también te permiten editar el archivo .htaccess.
Editar el Archivo wp-config.php
Una alternativa al método .htaccess
es aumentar el límite de tiempo de PHP editando el wp-config.php
en su lugar.
Para acceder y editar archivos principales como wp-config.php
, tenés que conectarte a tu sitio usando un cliente FTP como FileZilla, explorar los archivos de tu sitio con un panel de control de hosting web como cPanel, o navegar a través de tu administrador de archivos de Windows/Mac/Linux si tenés una instalación local.
Usaremos cPanel en este ejemplo, pero el proceso es el mismo para todos los métodos.
Iniciá sesión en tu cuenta de cPanel. Desde el panel de control principal, andá a la sección Archivos y hacé clic en Administrador de Archivos.
En la siguiente pantalla, andá al directorio public_html
. En algunos casos, puede tener un nombre diferente, como /
o root
, public
, root_html
, o el nombre de tu sitio web.
public_html
contiene el directorio raíz de WordPress con las tres carpetas principales (wp-admin
, wp-content
y wp-includes
) y el resto de los archivos principales.
Entre los otros archivos, vas a encontrar wp-config.php
. Hacé clic derecho en el archivo y seleccioná Ver/Editar. El archivo se abrirá y vas a ver código PHP.
Como en el método anterior, todo lo que tenés que hacer es agregar una línea de código al final del archivo:
set_time_limit(300);
Esta línea de código aumenta el límite de tiempo de PHP a 300 segundos.
Editar el archivo php.ini
Finalmente, podés editar el archivo php.ini
para obtener los mismos resultados.
Para acceder al archivo php.ini, primero iniciaste sesión en tu cuenta de cPanel. Desde el panel principal, vas a la sección Archivos y hacés clic en Administrador de Archivos.
En la siguiente pantalla, no vayas al directorio public_html
como hicimos antes. El archivo php.ini
estará fuera de public_html
junto con varios otros archivos.
Hacé clic derecho en el archivo y seleccioná Ver/Editar. Agregá la siguiente línea al final del archivo:
max_execution_time 300;
Una vez más, esto aumenta el límite de tiempo de PHP a 300 segundos.
Método #4: Aumentar el límite de memoria de WordPress
Como mencionamos, tu sitio puede agotarse durante las actualizaciones si WordPress no tiene suficiente memoria asignada para esos procesos. Algunas actualizaciones pueden ser intensivas en recursos, y puede que necesites más memoria que la memoria predeterminada para ejecutarlas con éxito.
Aumentar el límite de memoria es similar a aumentar manualmente el límite de tiempo de PHP, ya que todo lo que tenés que hacer es agregar o modificar una línea.
Para hacerlo, usá cPanel, FileZilla o tu administrador de archivos local para navegar hasta la carpeta principal de WordPress (la que tiene las carpetas wp-admin
, wp-content
y wp-includes
), hacé clic derecho en wp-config.php
y seleccioná Ver/Editar.
Una vez dentro del archivo, usá CTRL + F
o CMD + F
para buscar WP_MEMORY_LIMIT
. Si lo encontrás, se verá así:
define('WP_MEMORY_LIMIT', '64M');
Simplemente cambiá 64M
por 128M
o 256M
para aumentar tu límite de memoria PHP. 128M
debería ser suficiente para la mayoría de los sitios y 256M
debería ser suficiente para sitios que usan plugins intensivos en recursos.
Si no podés encontrar la línea, simplemente tenés que copiar y pegarla. Debés insertarla arriba de la línea que dice /* That's all, stop editing! Happy publishing. */
, que está cerca del final del archivo. Debería verse así:
define('WP_MEMORY_LIMIT', '256M');
/* That's all, stop editing! Happy publishing. */
Un límite de memoria PHP bajo es un problema común en proveedores de hosting relativamente baratos porque suelen ofrecer recursos limitados. Si aumentar el límite de memoria a través del archivo wp-config.php
no funciona, contactá a tu proveedor de hosting e informales de la situación.
Método #5: Modificar Permisos de Archivos
Este es un problema menos común, pero si tu sitio tiene varios administradores con acceso al backend, es posible que alguno de los usuarios haya modificado los permisos de los archivos de tal manera que WordPress no pueda editar los archivos necesarios.
Esto puede suceder porque las carpetas que contienen los archivos que WordPress necesita editar para realizar la actualización son de solo lectura, lo que significa que nadie puede editarlas, solo ver su contenido.
Para modificar los permisos de los archivos, tenés que acceder a tu sitio a través de FileZilla o cPanel.
Si usás cPanel, iniciá sesión en tu cuenta de cPanel, andá a la sección Files, y hacé clic en File Manager desde el dashboard principal. Navegá hasta la carpeta public_html
, hacé clic derecho en la carpeta wp-content
, y luego seleccioná Change Permissions.
Cambiá los permisos de la carpeta para que se vean así:
Podés marcar casillas específicas individualmente o escribir 755
abajo. Ambas opciones funcionan y el resultado es que ahora tu usuario tendrá permiso para modificar los archivos en la carpeta wp-content
(la carpeta que contiene plugins y temas) durante el proceso de actualización.
No necesariamente tenés que saber qué significan estos números, pero los permisos de archivo determinan quién puede ver, modificar y ejecutar los archivos de WordPress. Además, estos permisos se aplican a los administradores del sitio, grupos de usuarios y el resto del mundo.
Los permisos de archivo varían según la carpeta, con algunas carpetas teniendo permisos más o menos restrictivos que otras. Para saber más sobre los permisos de archivo en WordPress, leé la guía oficial de WordPress.
Método #6: Actualizá Tu Plan de Hosting
Si todo falla, puede que hayas alcanzado los límites de los recursos de tu plan de hosting y sea hora de actualizarlo para tener más potencia de procesamiento, memoria, límites de tráfico, etc. Probá múltiples soluciones antes de esto, ya que no querés gastar más plata en hosting a menos que sea necesario.
Solucioná Errores de Timeout en WordPress Durante Actualizaciones
Los errores de timeout en WordPress durante las actualizaciones pueden ser muy frustrantes porque hay múltiples causas posibles, así que tenés que ir probando una solución a la vez o contactar a tu proveedor de hosting. Como primera opción, te recomendamos desactivar todos los plugins y tratar de actualizar nuevamente.
Si eso no funciona, probá una solución manual aumentando el límite de tiempo de PHP o el límite de memoria de WordPress o modificando los permisos de los archivos. Alternativamente, podrías simplemente pedirle a tu proveedor de hosting que resuelva el problema por vos.
Si encontraste útil este post, leé nuestro blog para más información y guías sobre WordPress!