发现服务器CPU的资源消耗比较高,检查wordpressr发现wp-cron.php执行的比较频繁,严重影响服务器性能,所以打算禁用自动触发任务的功能。
1、在wp-config.php,加入以下代码,禁用cron:
define('DISABLE_WP_CRON', true);
2、在网站在conf文件中加入以下代码,禁止外部访问执行:
#禁止访问wp-cron.php文件 location ~* /wp-cron.php { allow 127.0.0.1; #本地IP allow x.x.x.x; #服务器IP deny all; }
3、通过Linux自带的crontab来执行wordpress在定时任务:
0 0 * * * /usr/bin/php /xxx/wp-cron.php >> /xxx/cron.log
这样wordpress的定时任务就不会随时被触发,而是交给服务器,按需求执行,大大减少了服务器资源的消耗。
这里注意php命令的位置,如果发现找不到命令或者扩展,你可能需要另外写个sh脚本来执行。
最后检查日志看看是否按需求执行了