Ошибка при выполнении команды с Cron - PullRequest
0 голосов
/ 03 февраля 2011

Я некоторое время пытаюсь выполнить скрипт php на своем веб-сайте, используя Cron с Cpanel.

Но я всегда получаю сообщение об ошибке, отправляемое по электронной почте:

При использовании: php <a href="http://mysubdomaine.mysite.com/job/job.php" rel="nofollow">http://mysubdomaine.mysite.com/job/job.php</a>;

Я получаю эту ошибку:

404 Not Found
X-Powered-By: PHP/5.2.14
Content-type: text/html
No input file specified

Использование: /usr/local/bin/php -f <a href="http://mysubdomaine.mysite.com/job/job.php" rel="nofollow">http://mysubdomaine.mysite.com/job/job.php</a>;

Я получаю это:

Could not open input file: http://mysubdomaine.mysite.com/job/job.php

Но файл php http://mysubdomaine.mysite.com/job/job.php существует на моем веб-сайте, и когда я набираю путь в браузере, скрипт выполняется.

Я также пытался с wget, но всегда с ошибками.

В чем здесь проблема?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 03 февраля 2011

Вы не можете передать URL-адрес PHP из командной строки, он хочет путь к файлу.Это будет что-то вроде /var/www/yoursite.com/html/index.php

Вы можете определить реальный путь, посмотрев на переменную $ _SERVER.Вверху вашего скрипта поместите

echo $_SERVER['SCRIPT_FILENAME'];

Нажмите его из браузера, и то, что эта строка напечатает, - это информация, которую вам нужно передать в командной строке.Это покажет полный путь и имя файла сценария.

0 голосов
/ 03 февраля 2011

Вы уверены, что хотите сделать php -f myscriptbehindapache?

Может быть, вы действительно хотите сделать wget myscriptbehindapache?

0 голосов
/ 03 февраля 2011

Выполнить скрипт PHP, используя локальный путь к файлу

/usr/local/bin/php -f /path/to/your/script
...