включить путь и cron

Я запускаю cronjob, который вызывает php-скрипт. Я получаю «не удалось открыть поток», когда файл вызывается cron. Когда я подключился к каталогу и запустил файл из этого места, все хорошо. В принципе, файл include_once (), который я хочу включить, – это два каталога, где находится скрипт php.

Может кто-нибудь, пожалуйста, скажите мне, как я могу заставить это работать от кроны?

Related of "включить путь и cron"

Существует несколько способов сделать это: вы могли бы cd каталог в свой cron-скрипт:

 cd /path/to/your/dir && php file.php 

Или укажите правильный файл include относительно текущего скрипта в PHP:

 include dirname(__FILE__) . '/../../' . 'includedfile.php'; 

cron известен тем, что начал с минимальной среды. Или:

  • ваш скрипт настроил свою собственную среду;
  • иметь специальный скрипт cron, который настраивает среду, а затем вызывает ваш скрипт; или
  • настроить среду внутри самой crontab.

Пример последнего (что я обычно использую, если не так много вещей, которые нужно настроить):

 0 5 * * * (export PATH = /mydir:$PATH ; myexecutable ) 

вам нужно посмотреть, каков путь, из которого запускается cron.

  echo pathinfo($_SERVER["PATH_TRANSLATED"]); 

в соответствии с этим

 include $path_parts['dirname']."/myfile.php";