Использование CronTab для запуска php-скриптов

Мне нужно отправлять электронные письма ежечасно и ежедневно. Я пробовал почти все, но кажется, что мой кронтаб просто не сработает. Если я запускаю сценарии через браузер, например

http://localhost/Maisha/Functions/sendhourlymails.php 

мои письма отправляются красиво. (Я перевел по умолчанию сайт localhost на public_html.) Я не знаю, что случилось. Я прочитал сообщение в переполнении стека, включая исполняемый путь php, поэтому я поставил / usr / bin / php, прежде чем фактический скрипт будет работать, но это не так. Удаление / usr / bin / php не работает. Добавление php до фактического скрипта не работает. У меня есть следующие записи в моем crontab.

 # mh dom mon dow command 0 * * * * /usr/bin/php /home/maxwell/public_html/Maisha/Functions/sendhourlymails.php 0 0 * * * /usr/bin/php /home/maxwell/public_html/Maisha/Functions/senddailymails.php 

Solutions Collecting From Web of "Использование CronTab для запуска php-скриптов"

Попробуйте вызвать скрипт через http с помощью wget:

 * * * * * wget http://mysite.com/myscript >/dev/null 2>&1 

Yeh, wget – хороший вариант, также вы можете попробовать:

0 * * * * / usr / sbin / php / usr / bin / php /home/maxwell/public_html/Maisha/Functions/sendhourlymails.php

но он может работать неправильно из-за относительных путей.

Также вы должны посмотреть http://php.net/manual/en/features.commandline.php

Попробуйте поместить это в ваш .php-файл

 <?php #!/usr/local/bin/php -q //your code here ?> 

Затем, если вы включите какой-либо файл в этот файл, вы должны использовать что-то вроде:

 include"/var/www/../your_absolute_path_from_root_folder/connect.php"; 

Finnaly убедитесь, что этот файл имеет правильные разрешения.

 chmod 755 /var/www/.../file.php 

Затем, если вы отредактируете файл crontab с помощью следующей команды

 vi /etc/crontab 

поместить что-то вроде

 10 6 * * * root php /var/www/..path../file.php 

и перезапустите службу с помощью этой команды

 /etc/init.d/cron restart 

вы делаете свою работу !!

  • Примечание. Совет. Файл php не является обязательным для использования в папке public_html!