Трудно сказать без дополнительной информации об отладке, но распространенной проблемой при запуске задач cron является расположение рабочего каталога. Если вы ожидаете, что ваши вложения находятся в папке со сценарием и ссылаются на них, используя относительные пути, такие как filename.txt
, этот путь относится не к сценарию, а к рабочей директории процесса cron, которая может быть где угодно. Он работает, когда вы запускаете его из Интернета, потому что ваш веб-сервер меняет каталог на корневой каталог виртуального хоста перед запуском вашего скрипта, поэтому будут работать относительные пути.
Попробуйте либо использовать абсолютные пути для файловых вложений (например, используя __DIR__.'/filename.txt'
), либо смените каталог перед запуском задачи cron:
*/2 * * * * cd /var/www/Apps/Appsname && /usr/bin/php /var/www/Apps/Appsname/weeklybusinessemail.php