У меня есть файл PHP с именем cronjob.php, который включает другой файл PHP, расположенный в том же каталоге, например:
include_once dirname(__FILE__) . '/my_file.php';
В DirectAdmin я сделал следующее cronjob:
cd /home/*username*/domains/*domain*/public_html/wp-content/plugins/MyPlugin/classes/ && /usr/local/bin/php -f cronjob.php
Когда cronjob нужно запустить, ничего не происходит. Даже электронное письмо не отправляется. Всякий раз, когда я делаю ошибку или опечатку в сценарии, электронное письмо все же отправляется (с очевидностью сообщая мне, что что-то не так).
Я также пробовал следующую команду cron:
/usr/local/bin/php -f /home/*username*/domains/*domain/public_html/wp-content/plugins/MyPlugin/classes/cronjob.php *
Примечание: Когда включение идет не так, я получаю сообщение электронной почты, в котором говорится, что класс, который я пытаюсь создать в cronjob.php, не может быть найден (потому что он должен быть включен из "my_file.php"), поэтому путь к " cronjob.php "правильный.






Вы можете попробовать что-то вроде:
$dir = __DIR__;
include_once $dir . '/my_file.php';
Поскольку у вашего Directadmin есть cd var, попробуйте выполнить следующее include_once getcwd (). '/ My_file.php';