手机看片精品高清国产日韩,色先锋资源综合网,国产哺乳奶水91在线播放,乱伦小说亚洲色图欧洲电影

幫助中心 >  技術知識庫 >  虛擬主機 >  虛擬主機常見問題及技術支持 >  wordpress定時任務(wp-cron.php)造成主機CPU比較高的解決辦法

wordpress定時任務(wp-cron.php)造成主機CPU比較高的解決辦法

2017-06-16 15:33:20 23081

wordpress定時任務(wp-cron.php)造成主機CPU比較高的解決辦法


網站CPU天天100+的,過一會就掛了,原來是wp-cron.php文件造成的。 


wordpress的定時任務功能我們還是經常要用到的,例如wordpress的定時備份,定時發布文章等都需要用到wordpress的定時任務功能,而在wordpress中,是靠wp-cron.php來實現這些功能的。但是昨天本人網站就出現CPU嚴重超標的情況,導致被主機商停機,好不容易聯系上客服,被告知是由于wp-cron.php文件造成的。原來,在使用了wp-super-cache緩存插件的時候,后臺會有很多wp-cron.php的調用,每一次訪問頁面都會調用。這樣就容易出現cpu超標的情況了。 

WP-Cron的原理是這樣的:雖然用戶不能通過crond設置計劃任務,但網站隨時可能會有用戶在點擊,只要在用戶點擊的時候,判斷當時是否有需要運行的后臺任務,如果則在后臺運行該任務,就可以實現類似crond的效果。雖然這么好用,不過占用這么高的系統資源我就不得不禁用它了。 


禁用WP-Cron很簡單,編輯wp-config.php,加入一下一行: 



代碼如下:


define('DISABLE_WP_CRON', true); 



當然了,如果你的主機可以設定crontab,你可以在你后臺系統的crontab文件里,增加下面的代碼: 



代碼如下:


*/15 * * * * YOUR_USER /usr/bin/wget -q --post-data '' http://YOUR_SITE/wp-cron.php?doing_wp_cron -O /dev/null 



上面配置指示,每15分鐘,調用wget命令訪問站點的wp-cron.php文件,post-data參數指示wget用POST方法,而不是GET方法,這樣可以避免WP-Super-Cache這樣的緩存插件影響后臺任務的正確執行,但post-data傳輸的數據必須是空內容,否則wp-cron.php會拒絕執行。 


或者系統的crontab中添加 



代碼如下:


0,30 * * * * php -q /path_to_your_website/public_html/wp-cron.php 


提交成功!非常感謝您的反饋,我們會繼續努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: