Я просто пытаюсь запустить PHP-скрипт, используя задание cron в CPanel - это правильный синтаксис:
/usr/bin/php -q /home/username/public_html/cron/cron.php >/dev/null
Я не получаю никаких уведомлений по электронной почте о том, что cron был завершен, нужно ли мне что-то делать с файлом PHP?
Ответы:
В системе crontab:
/usr/bin/php
это PHP двоичный путь ( по- разному в некоторых системах например: FREEBSD/usr/local/bin/php
, Linux:/usr/bin/php
)/home/username/public_html/cron/cron.php
должен быть ваш путь к скрипту php/dev/null
должен быть вывод cron, например:/home/username/stdoutx.txt
Таким образом, вы можете контролировать свой cron, просматривая вывод cron
/home/username/stdoutx.txt
источник
Я использовал эту команду, чтобы активировать для этого задание cron.
на сервере godaddy, и он работает нормально.
источник
-q
?-q
предназначен для тихого режима, подавляет вывод заголовка HTTP>/dev/null
останавливает cron от отправки писем.на самом деле, на мой взгляд, лучше сделать
php
сам скрипт, который заботится о его регистрации, а не просто выводит что-то в cronисточник
>/dev/null 2>&1
в финале .../path/to/file.php > /dev/null
он будет молчать.Это самый простой способ:
php -f /home/your_username/public_html/script.php
И если вы хотите записать вывод скрипта в файл, добавьте это в конец команды:
>> /home/your_username/logs/someFile.txt 2>&1
источник
Это способ:
источник
Эта строка cron работала для меня на hostgator VPS с использованием cpanel.
источник
У меня были проблемы с использованием / usr / bin / php на CPanel, поскольку он скомпилирован как двоичный файл «cgi-fcgi», а не «cli». Попробуйте использовать / usr / local / bin / php или, поскольку он в любом случае стоит первым на пути, просто используйте вместо него 'php':
Если вы хотите запустить скрипт как исполняемый файл, дайте ему + x perms и используйте следующую строку в качестве первой строки скрипта:
источник
Я надеюсь, что ваша проблема связана с двоичным файлом path и php. Если вы исправили путь в соответствии с более ранними ответами, используйте php-cli вместо команды php при выполнении задания cron.
Возможно
php_sapi_name()
, не возвращаетсяcli
. Он возвращает что-то еще, например,cgi-fcgi
и т. Д./usr/bin/php-cli -q /home/username/public_html/cron/cron.php >/dev/null
Надеюсь, это поможет.
источник
Это отлично работает, а также отправляет электронное письмо:
/ usr / bin / php /home/xxYourUserNamexx/public_html/xxYourFolderxx/xxcronfile.php
Следующие две команды также работают нормально, но не отправляют электронную почту:
/ usr / bin / php -f / home / То же, что и выше
php -f / home / То же, что и выше
источник
Предложено экспертами.
источник
На самом деле это очень просто,
источник
Для конкретного домена Multi PHP Cron Job сделайте следующее:
В приведенном выше примере замените «ea-php56» на версию PHP, назначенную домену, который вы хотите использовать.
Надеюсь, это кому-то поможет.
источник