保护 wp cron.php,wp-cron.php任务的定时执行和控制
wp-cron.php主要用來實現wordpress的一些定時任務,如定時發布文章,定時備份數據,定時響應頁面緩存等操作。wp-cron是wordpress內置模塊,該模塊的特點:它只能在用戶發起請求時檢查定時任務。也就是說,沒有用戶訪問時,那定時任務就得不到執行;有用戶訪問時,某個用戶會因為定時任務在執行而響應很慢甚至超時。所以,wp-cron在生產環境下會造成服務器壓力。
控制wp-cron進程的一種更好的做法是開啟一個獨立的進程執行這些定時任務,比如說使用crontab + wp-cli實現這種做法。
一、禁用wp-cron:修改wp-config.php
define('DISABLE_WP_CRON', true);
二、通過crontab定期執行任務
* * * * * cd /var/www/html && /usr/local/bin/wp cron event run --due-now > /dev/null
例如:*/10 * * * * curl https://www.yoursite.com/wp-cron.php?doing_wp_cron > /dev/null 2>&1
設置每隔10分鐘觸發一次執行,你可以根據自己的需求進行調整。> /dev/null 2>&1是不輸出任何log日志文件,可以降低服務器硬盤占用。
如果你使用的是虛擬主機,那么可以使用第三方提供的監控服務來控制wp-cron的定時執行。
例如監控網址:
https://www.yoursite.com/wp-cron.php?doing_wp_cron
注意:許多緩存插件都會為自身性能而去添加一些Wp cron定時任務,當我們卸載插件后這些定時任務并不會被完整移除,這就造成了WP cron定時任務的無用功,運行一些沒有實際意義的定時任務,所以插件卸載后需要檢查是否清除了options任務。
總結
以上是生活随笔為你收集整理的保护 wp cron.php,wp-cron.php任务的定时执行和控制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux c语言编写聊天室mysql_
- 下一篇: 电脑端跳转手机版的php代码,帝国CMS