[教學] 如何避免 WordPress 排程工作佔用大量主機資源?
WordPress 是一個架設部落格的套件,它以易用及方便安裝而聞名,不過亦偶有些小問題。
筆者觀看虛擬主機的統計,發覺 WordPress 用來進行排程的 wp-cron.php 佔用不少的 CPU 時間,因此在網絡上蒐集了解決方法。
教學名稱:如何避免 WordPress 排程工作佔用大量主機資源?
相關應用:WordPress
適用平台:cPanel
教學難度:★★★☆☆
本文網址:https://blog.3bro.info/archives/wordpress-fix-cron-job-php/
準備步驟
這教學僅適用於具有 cPanel 及獲准設置 Cron Jobs 的虛擬主機。
詳細步驟
WP-CONFIG.PHP
1. 前往 WordPress 的根資料夾,編輯設定檔 wp-config.php
2. 在最底一行新增以下的 PHP 代碼:
define('DISABLE_WP_CRON', true);
cPanel
3. 前往 cPanel,並點擊 Cron Jobs
4. 在 Add a New Cron Job 的 Common Setting 一欄,選擇 Twice Per Hour
5. Command 則輸入以下 Bash 代碼,謹記把 domain.example 改為你的域名
wget -q -O - http://domain.example/wp-cron.php?doing_wp_cron >/dev/null 2>&1
6. 確認無誤後點擊 Add New Cron Job
原理
WordPress 本身會使用 wp-cron.php 模擬定期執行排程工作的計時器,導致系統浪費許多資源執行相關的 PHP 代碼。本教學設置系統級的排程工作,減少系統資源的使用量,從而減少佔用的 CPU 時間。
參考資料
https://www.siteground.com/tutorials/wordpress/real-cron-job/