- Mensajes
- 620
- Puntuación de reacción
- 0
Sí, señores. Buenos días,tardes,noches. Hoy les traigo un "tutorial" o "guía" como quieran llamarlo de una función que me parece imprescindible en cualquier web gestionada por Wordpress. Quizá haya unos que me recuerden por dos tutos anteriores que he compartido sobre https://foro20.com/optimizacion-ons...ogle-drive-como-cdn.html?highlight=drive+como y una guía para https://foro20.com/optimizacion-ons...dpress-.html?highlight=optimizacion+wordpress. Sin más, quiero que sepas por qué desactivar el cron que viene con Worpdress
El archivo "wp-cron.php" es importante para que nuestro WorpdPress trabaje sin problemas, pero ¿cómo que desactivarlo? ¿estoy loco? no, tómate un respiro ahora, y mira por qué.
Este archivo, al ser virtual, se activa cada vez que alguien visita nuestra web, eso significa que si en un hora recibimos 3.000 visitas, 3.000 veces se hace llamado al wp-cron.php y 3.000 veces se van a ejecutar las tareas de este, o sea que el consumo de tu CPU puede reventar y terminar con tu web caída como me paso hace poco
Debido a este problemita (sin mentirte, en mi web recibí +7.000 llamados a wp-cron.php en menos de 2 horas lo que hizo que el error 503 "servicio inhabilitado" me tuviera offline unas 28 horas mientras solucionaba y me activaban el servicio otra vez)me di a la tarea de investigar y encontré con una solución rápida, confiable (llevo con ella unos 11 días) y por eso la comparto para quienes la quieran usar.
Esto se divide en dos partes la primera será Crear un Cron job directamente en nuestro CPanel y la segunda es desactivar el wp-cron.php para que no se active con cada visita sino cuando el servidor (mediante la tarea de cron) lo llame a "rendir cuentas" :sisi1:
Otro ejemplo de por qué escribir el cron en nuestro CPanel y no confiarnos del wp-cron.php por su cuenta: Tenemos una entrada programada para hoy pero no hay visitas, ni nos acordamos de entrar o no podemos, la entrada se quedará como "programación perdida" y si aún más grave, ya le habías hecho "fiesta" por las redes, programaste algún tuit o estado en Facebook, pero,llega la hora, se libera todo menos la entrada, entran por medio de las redes y ¿la entrada? 404 por doquier, ¿mala imagen, no?
Así, que empecemos por la primera parte:
Entrarás a tu CPanel y buscarás "Cron Jobs"
En "agregar nueva tarea de Cron" seleccionarás cada cuánto tiempo se ejecutará el comando, yo lo tengo cada 15 minutos, tú eres libre de seleccionar el tiempo que consideres.
en "comando" agregarás el siguiente cambiando "tu sitio web" obviamente por el tuyo
Agregas el cron y listo.
La segunda parte es:
Ahora haremos una modificación en el archivo wp-config.php (también en tu CPanel)
Lo abrimos para edicción y buscamos la siguiente línea: /* That’s all, stop editing! Happy blogging. */
Justo antes de esta línea ponemos la siguiente:
Guardamos y listo, ya lo hemos hecho todo. Esto hará que las visitas ya no activen el wp-cron.php y no tengas dolores de cabeza, además el servidor se encargará de todo.
ACTUALIZACIÓN: Añado un plugin para los que programan muchas entradas en su blog y puedan correr el riesgo de caer en "programación perdida" es: https://wordpress.org/plugins/wp-missed-schedule/
No hay que configurar nada, simplemente activar y listo, El plugin lo que hace es que cada 5 minutos examina si hay algo pendiente de publicar y lo publica.
Importante: Usar este plugin sin la configuración anterior, solo es una alternativa a los que no quieran tocar su código o agregar tareas de Cron.
Espero que te haya servido y Saludos.
El archivo "wp-cron.php" es importante para que nuestro WorpdPress trabaje sin problemas, pero ¿cómo que desactivarlo? ¿estoy loco? no, tómate un respiro ahora, y mira por qué.
Este archivo, al ser virtual, se activa cada vez que alguien visita nuestra web, eso significa que si en un hora recibimos 3.000 visitas, 3.000 veces se hace llamado al wp-cron.php y 3.000 veces se van a ejecutar las tareas de este, o sea que el consumo de tu CPU puede reventar y terminar con tu web caída como me paso hace poco
Debido a este problemita (sin mentirte, en mi web recibí +7.000 llamados a wp-cron.php en menos de 2 horas lo que hizo que el error 503 "servicio inhabilitado" me tuviera offline unas 28 horas mientras solucionaba y me activaban el servicio otra vez)me di a la tarea de investigar y encontré con una solución rápida, confiable (llevo con ella unos 11 días) y por eso la comparto para quienes la quieran usar.
Esto se divide en dos partes la primera será Crear un Cron job directamente en nuestro CPanel y la segunda es desactivar el wp-cron.php para que no se active con cada visita sino cuando el servidor (mediante la tarea de cron) lo llame a "rendir cuentas" :sisi1:
Otro ejemplo de por qué escribir el cron en nuestro CPanel y no confiarnos del wp-cron.php por su cuenta: Tenemos una entrada programada para hoy pero no hay visitas, ni nos acordamos de entrar o no podemos, la entrada se quedará como "programación perdida" y si aún más grave, ya le habías hecho "fiesta" por las redes, programaste algún tuit o estado en Facebook, pero,llega la hora, se libera todo menos la entrada, entran por medio de las redes y ¿la entrada? 404 por doquier, ¿mala imagen, no?
Así, que empecemos por la primera parte:
Entrarás a tu CPanel y buscarás "Cron Jobs"
En "agregar nueva tarea de Cron" seleccionarás cada cuánto tiempo se ejecutará el comando, yo lo tengo cada 15 minutos, tú eres libre de seleccionar el tiempo que consideres.
en "comando" agregarás el siguiente cambiando "tu sitio web" obviamente por el tuyo
Código:
wget -q -O – -t 1 http://tusitioweb.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
La segunda parte es:
Ahora haremos una modificación en el archivo wp-config.php (también en tu CPanel)
Lo abrimos para edicción y buscamos la siguiente línea: /* That’s all, stop editing! Happy blogging. */
Justo antes de esta línea ponemos la siguiente:
Código:
define(‘DISABLE_WP_CRON’, true);
ACTUALIZACIÓN: Añado un plugin para los que programan muchas entradas en su blog y puedan correr el riesgo de caer en "programación perdida" es: https://wordpress.org/plugins/wp-missed-schedule/
No hay que configurar nada, simplemente activar y listo, El plugin lo que hace es que cada 5 minutos examina si hay algo pendiente de publicar y lo publica.
Importante: Usar este plugin sin la configuración anterior, solo es una alternativa a los que no quieran tocar su código o agregar tareas de Cron.
Espero que te haya servido y Saludos.
Última edición: