Using the PageSpeed API

Опубликовано: 29.06.2017

видео Using the PageSpeed API

Установка и настройка модуля ISPmanager для WHMCS

В CMS WordPress для выполнения задач по крону употребляется файл wp-cron.php. К таким задачкам, к примеру, относится публикация статьи в данное время, выполнение пингов (если вы осознаете, о каких я пингах говорю), выполнение операций с плагинами, создающими и обновляющими карту веб-сайта, чистит корзину, инспектирует наличие обновлений и почти все другое.


Using the PageSpeed API

Пример выполнения таковой задачки можно узреть в server-status, если он включен. Если не включен – то включить его можно по этой>>> статье.

Сам пример:

8-2 – /00/2 . 0.03 75525 5798 0.0 0.00 0.00 77.120.106.40 l2db.com.ua POST /wp-cron.php?doing_wp_cron=1348513272.78116106986999511718

Если выполнение этого файла вызывает больную нагрузку на сервер – можно отключить эти задачки. Для этого в файл конфигурации WordPress wp-config-php добавляем строчку:


How to Fix Error displaying the error page: Application Instantiation Error on Joomla 2.5 & 3.0

define(‘DISABLE_WP_CRON’, true);

Добавить её можно кое-где после установки языка, т.е. после строчки

define(‘WPLANG’, ‘ru_RU’);

Другой вариант решения – в самом файле wp-cron.php закомментировать строчку:

//ignore_user_abort(true);

Данная функция продолжает выполнение скрипта даже при превышении им параметра max_execution_time для PHP.

И более верный вариант – делать wp-cron.php системным кроном, во время меньшей нагрузки на сервер.

Для этого – выключаем wp-cron.php в конфигурации WordPress, как описано в самом начале статьи.

Дальше – сделаем в редакторе текста файл cron.sh, разместим его в домашнем каталоге юзера. К примеру у меня это будет /usr/local/www/users/l2db. Добавим в него такое содержимое:

#!/usr/local/bin/bash
/usr/local/bin/wget  -O /dev/null -q http://l2db.com.ua/wp-cron.php

В Linux путь к wget-у будет вероятнее всего /usr/bin/wget. Аналогично с bash либо sh. Проверить можно командой:

# whereis wget

Установим обладателем файла юзера, которому принадлежит виртуалхост с веб-сайтом:

# chown l2db:l2db cron.sh

Разрешим выполнение файла:

# chmod u+x cron.sh

Так мы разрешаем пуск файла только самому юзеру.

Сейчас, находясь в консоли под необходимым юзером, исполняем:

$ crontab -e

И добавляем 2 строчки:

MAILTO=root
0     05     *     *     *     /usr/local/www/users/l2db/cron.sh

1-ая нужна для того, что бы после выполнения cron-а нам приходило письмо в случае ошибки при выполнении, 2-ая – запускает файл /usr/local/www/users/l2db/cron.sh от имени юзера l2db каждый денек в 5 часов утра.

Проверить выполнение задачки можно в файле лога cron:

# cat /var/log/cron | grep l2db
Sep 26 10:14:00 akira /usr/sbin/cron[14107]: (l2db) CMD (/usr/local/www/users/l2db/cron.sh)

И проверим лог веб-сервера Apache на предмет выполнения самого файла wp-cron.php:

# tail -f /var/log/apache/l2db.com.ua-access.log | grep cron
77.120.106.40 – – [26/Sep/2012:10:14:00 +0300] “GET /wp-cron.php HTTP/1.0” 200 – “-” “Wget/1.13.4 (freebsd9.0)”

Подсказка по указанию времени пуска задач в кроне есть здесь>>>.

Инструкия по применению системного крона – здесь>>>.