如果後續想接收本站有關網站架設網站資安特價優惠活動等訊息
您可以透過以下表單留下您的電子郵件信箱來訂閱我們的電子報

WordPress 排程管理外掛 WP-crontrol

WordPress 很忙

使用 WordPress 架站的你知道它每天都很忙嗎?在忙什麼呢?

當然是你交辦的事囉!在你看到這篇文件之前,應該不知道 WordPress 有一個 Cron Job 的機制來處理這些排程的工作吧?

高登本來也不是很在意 WordPress 排程這件事,只是會在主機的 Apache Log 裡面看到,主機定期就會執行在根目錄下面的 wp-cron.php 這支程式,那這支程式到底在作些什麼事呢?

話說某企業官方部落格因為耗用太多資源而被國內某大主機商停權,而就在幫他們處理的過程當中發現了幾個有趣的現象:

  • 主機商丟來的的 MySQL slow query log 裡面指出網站的一支「nggallery.php」程式造成大量的 MySQl 資料庫查詢而佔用太多資源!但是...翻遍主機後台及檔案就是找不到這個 NextGEN Gallery?!正好又逢農曆七月到了,莫非...
  • 因為被停權了,所以就先暫時搬到我的 VPS 抓蟲(對方擺明就是要你搬走,隨便掰一個理由就趕人),在檢查網站檔案的時候,發現根目錄的 wp-cron.php 被更名了!也就是有人懷疑是這支程式搞的鬼所以把它廢了!
  • 但是就算沒有排程工作網站有時還是會耗用許多資源

所以大家才有緣看到這個 WP-crontrol 外掛的介紹

WP-crontrol 排程管理外掛

請由 WordPress 後台搜尋及安裝這個外掛,網址我就不貼了

WordPress 排程管理外掛 WP-crontrol

裝好啟用之後,請到左邊欄[工具]找到這個 Crontrol 外排的設定頁面

WordPress 排程管理外掛 WP-crontrol

這個排程表有五個欄位:

  • Hook Name: 排程的名稱
  • Argunents: 執行的參數
  • Next Run: 下次執行時間
  • Recurrence: 排程週期
  • Actions: 你可以執行的作業:
    • Edit: 編輯
    • Run Now: 馬上執行
    • Delete: 刪除排程

這些排程大部份可以由名稱猜到它的功用,例如:

  • wp_version_check: 檢查 WordPress 版本
  • wp_update_themes: 檢查版型是否有更新
  • wp_scheduled_delete: WordPress 定期清理
  • wp_scheduled_auto_draft_delete: WordPress 定期清理自動草稿
  • wp_db_backup_cron: WordPress Database Backup外掛的排程
  • wp_update_plugins: 檢查外掛是否有更新
  • hyper_clean: Hyper Cache 快取外掛的定期清理

如果你有不知道幹什麼的排程名稱也歡迎提出來大家研究

如果你有要自己新增的排程也可以用這個外掛來新增

WordPress 排程管理外掛 WP-crontrol

安裝了這個外掛之後,發覺有一些外掛在移除的時候忘了把排程也刪除,真是糟糕!如果你也有這種外掛的話正好可以清理一下門戶

如果你的網站明明就沒什麼人瀏覽,卻又耗很多資源的話,那這個排程是你應該要檢查的項目

但是上面提到的網站耗用資源的原因並不是因為這個排程表,聰明的你應該想到既然 wp-cron.php 都被改檔名,怎麼可能會是排程引起的呢?而那個網站的問題一般虛擬主機租用戶可以解決的(除非你的主機商願意為你增設防火牆規則)

如果網站達到一定的規模就要有主機更上一層樓的心理準備吧!

至於 WordPress 的排程最好不要用前面天才的方法停掉,因為這些排程都是必要的,甚至最基本的排程發文也是利用它來達成的

7 則留言

  1. hi, thanks for your useful post on wp-cron.php
    Bill sending from Mainland, I can't type traditional Chinese, so i gotta use this crazy English~, -_-

  2. 高登兄您好,想請教一下,最近升級了woocommerce購物外掛及換了新的佈景主題後,

    不知為何在虛擬主機後台查看,發現cpu使用率飊得很高,
    這購物外掛已經使用很久了,只是更新及換主題..
    平常也沒有什麼人氣,查看主機後台訪客記錄及流量記錄也沒特別異常,
    也有習慣在做資料庫優化的動作,我的wordpress也有裝Hyper Cache...
    但我現在是完全沒有頭緒要從何處知道是哪個環節有問題...
    不知可否給小弟一個意見該從何著手找出問題呢?
    或者有沒有方式能得知wordpress的某個外掛或頁面使用率過高呢?謝謝

    • 你去主機後台的檔案總管找 error_log 的錯誤記錄檔,還有 cPanel 也有很詳細的 error log 可以看
      這些可能都是出問題的蛛絲馬跡
      如果這些找不到,那就只有請主機商協助了,不過根據我的經驗這種的網站很快就會被停權

      • 謝謝高登兄,目前已發現是模版的因素造成,換掉就正常了,
        另外,高兄之前有提到的vps,其實小弟也想嘗試,
        像linode初級方案20美元都還可接受,
        但最大的障礙是使用難度(相信也是很多人卻步的原因),
        不知道有沒有vps或類似架購是有現成後台,像使用一般虛擬主機一樣,
        但使用彈性(如流量,cpu使用率)比一般虛擬主機還要高的呢?

        • KVM VPS買 1GB RAM 以上,再加上安裝 cPanel 後台管理系統(一個月US$15),這樣子使用起來就跟虛擬主機一樣方便,而資源又可以不怕受別人的影響
          有的 VPS 會幫你安裝 cPanel,不過有一個叫 WHM 的主機後台你還要學習如何用來開帳號、安裝各種模組等等使用方法

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料