Evaluación inicial sin contraseñas Presupuesto antes de intervenir Especialista responsable de principio a fin

Errores Visibles Http Php

«Maximum Execution Time Exceeded» durante una tarea de WordPress

Repara timeouts de WordPress rastreando la función lenta, la espera de MySQL o API y pasando el trabajo a lotes o CLI con seguridad.

PHP detiene una petición cuando supera el tiempo de ejecución, pero el retraso real puede ser trabajo de CPU, un bloqueo de base de datos, una espera HTTP remota o un lote demasiado grande. Aumentar el número no vuelve eficiente la tarea y quizá exista un timeout anterior en el proxy.

Conserva el primer error fatal y comprueba si la tarea terminó parcialmente antes de volver a ejecutarla.

Registra los límites de la tarea

Anota página o acción, número de elementos, hora de inicio, hora del error y último elemento confirmado. Consulta el archivo y la línea del error fatal.

Compara:
max_execution_time de PHP
timeout del proxy y servidor web
timeout de la API remota
duración de consulta o bloqueo MySQL
duración mostrada por el navegador

Usa registros protegidos y oculta parámetros personales o secretos.

Dibuja la jerarquía de tiempos máximos

Anota el plazo de cada salto: CDN, balanceador, servidor web, PHP-FPM, script PHP, base de datos y API remota. El valor efectivo más pequeño termina la petición visible.

Distingue tiempo total de tiempo de CPU, porque las configuraciones PHP no contabilizan igual todas las esperas de red. Comprueba el comportamiento del alojamiento en lugar de confiar en el nombre del ajuste. Un proceso CLI tiene otra jerarquía y aun así necesita un límite operativo.

Averigua qué hace la línea señalada

El error puede apuntar a un bucle, consulta, operación con archivos o petición de red. Lee el código cercano y la pila de llamadas del componente.

Un timeout dentro de curl_exec() sugiere una dependencia remota; dentro de una función de base de datos puede ocultar una consulta lenta o un bloqueo; en un bucle sobre entradas o imágenes señala el tamaño del lote.

No parches esa línea sin entender sus entradas y quién la llama.

Comprueba efectos parciales

Importaciones, correos, actualizaciones y sustituciones pueden confirmar cada elemento por separado. Cuenta qué cambió e identifica registros con claves estables.

Antes de reintentar, confirma que la operación es idempotente o reanúdala desde un punto de control. Repetir un envío masivo o una escritura externa puede crear duplicados visibles para clientes.

Haz una nueva copia de archivos y datos antes de reparar resultados parciales.

Rastrea esperas MySQL y remotas

Relaciona la petición con registros de consultas lentas, bloqueos y proveedor. Establece tiempos de conexión y lectura acotados en APIs propias.

Un timeout externo deja el resultado en estado desconocido. Consulta al proveedor mediante una referencia estable antes de repetir una escritura.

Evita mantener abierta una transacción MySQL mientras esperas a un servicio externo.

Procesa en lotes acotados

Divide el trabajo en unidades pequeñas y guarda el progreso después de cada lote terminado.

Propiedades del lote:
identificadores explícitos
duración medida
punto de control y reanudación
lista de errores
reintento seguro

Utiliza cron o Action Scheduler cuando corresponda, pero vigila la cola. Una acumulación oculta no es una tarea completada.

Prefiere CLI para mantenimiento

WP-CLI evita los plazos del navegador y del proxy y resulta adecuado para importaciones, sustituciones y regeneraciones. Sigue necesitando límites explícitos, registros y reversión.

Ejecuta con el usuario correcto del alojamiento, en la raíz y base de datos previstas. Confirma el entorno antes de cualquier orden destructiva.

No presupongas que cerrar la terminal detiene un proceso desacoplado.

Cambia los tiempos con pruebas

Si la tarea medida es finita, eficiente y no puede dividirse más, ajusta los límites de PHP o servidor mediante controles compatibles durante la ventana de mantenimiento.

Mantén acotadas las peticiones públicas para proteger los workers. Restaura los valores temporales y documéntalos.

Ampliar todas las capas a varios minutos permite que una sola visita ocupe capacidad escasa.

Verifica carga y salud de la web

Ejecuta primero una prueba pequeña y después el lote previsto mientras vigilas duración, memoria, base de datos y workers PHP. Comprueba recuentos y que no haya efectos duplicados.

Prueba páginas públicas durante la operación. El mantenimiento recurrente debería identificar tareas largas antes de actualizar y programarlas con puntos de control; una tarea fiable termina o reanuda de forma determinista, sin depender de un timeout cada vez mayor.

ANTES DE ENVIAR LA SOLICITUD

Preguntas frecuentes.

¿Pedís contraseñas en el formulario?+

No. El formulario público nunca solicita accesos. Los datos seguros se piden únicamente después de aprobar el alcance y el presupuesto.

¿Quién revisa la incidencia?+

La solicitud llega a Jordi Ensenyat, fundador de Code Barcelona y especialista WordPress con más de 15 años de experiencia.

¿Se cambia algo antes del presupuesto?+

No. Primero se revisan los síntomas visibles y se define el alcance. La intervención empieza tras la aprobación y con una vía de vuelta preparada.

¿Trabajáis con webs en inglés y fuera de España?+

Sí. WP Repair atiende incidencias WordPress y WooCommerce en inglés y español, con servicio remoto.

Evaluar mi incidencia