2013-04-22 4 views
21

Я хотел бы запускать PHP-скрипт каждый день в полночь. После исследования того, как это сделать, кажется, что лучший способ достичь этого - использовать работу CRON.Выполнение PHP-скрипта с заданием CRON

Если мой php-скрипт находился в http://example.com/scripts/scriptExample.php, может ли кто-нибудь показать самый простой пример того, как будет выглядеть эта команда CRON?

Я просмотрел многочисленные сообщения, но я не могу найти достаточно простой пример, чтобы я мог учиться и основываться на нем.

Спасибо заранее,

Dan

+0

бежишь этот скрипт на windows или linux? – Adidi

+0

Я считаю, что сервер является Linux. – djnetherton

+0

http://en.wikipedia.org/wiki/Cron '0 0 * * */path/to/php/path/to/phpscript' 0мин 0час каждый день месяц год. php с полным путем на локальном сервере, php-скрипт с полным путем. ИЛИ '0 0 * * * wget http: // example.com/scripts/scriptExample.php' – Waygood

ответ

22

Crontab нужен полный путь на сервере.

0 0 * * * php /var/www/vhosts/domain.com/httpdocs/scripts/example.php 

Это будет выполняться каждый день в полночь.

+0

Это замечательно. Я попробую эту команду после завершения сценария. Спасибо за помощь! – djnetherton

+0

Этот код не работает со мной! – moderns

+0

И потому, что это простой способ запросить «страницу» через wget или lynx таким образом: http://hardforo.com/thread-460-post-1234.html – boctulus

0

Вы используете компанию для размещения вашего веб-сайта?

Как вы должны иметь значок в своем c panel от cron jobs оттуда, вы можете сказать, какой скрипт выполнить и когда.

+0

Я да. Это звучит многообещающе Крис. Я посмотрю. – djnetherton

+0

У моей cPanel есть этот Крис, который замечательный. Однако фактическая команда, которую мне нужно предоставить, - это то, что мне нужно сейчас. Пример того, как выглядит эта команда, будет замечательным! – djnetherton

+0

ОК командной строки будет выглядеть примерно так. usr/bin/php -q –

1

Так что-то вроде этого:

00 * * * * /usr/local/bin/php /home/john/myscript.php 

00 * * * * означает ежечасно /USR/местные/бен/PHP - где PHP главный двигатель находится в /home/john/myscript.php - скрипт для запуска (физический путь)

Вы также можете использовать специальный ключ @hourly:

@hourly /usr/local/bin/php /home/john/myscript.php 
3

Если у Вас есть доступ SUDO к вашему Linux серверу: - Затем выполните следующие действия

sudo crontab -e 

Это откроет вкладку хрон для вас на сервере.

Следующая вещь вы должны сделать запись хрон для файла, который вы хотите выполнить

00 00 * * * /usr/local/bin/php "path of the php file which you want to execute" 

00 00 * * * это будет работать ваш хрон в полночь каждый день, значит, на 0hrs и 0mins

+2

Как обе версии равны 0. Его 0 минут, 0 часов, если быть точным, порядок: MINS HOURS DAYOFMONTH MONTH DAYOFWEEK # command # – Waygood

Смежные вопросы