Я использую Facebook SDK, чтобы опубликовать пост на стене на моей странице в facebook. Он отлично работает, когда я запускаю скрипт в своем браузере, но когда я запускаю его с терминала, он дает мне ошибку, как показано ниже, я не знаю, что случилось, пожалуйста, помогите. Я хочу опубликовать на моей странице facebook, используя php CRON-скрипты, как каждые 6 часов.
Неопределенный индекс: ошибка HTTP_HOST в Facebook / src / base_facebook.php
Cron выполняет PHP не как модуль apache, поэтому многие переменные окружения не задаются сервером. При выполнении cron ваш PHP-скрипт похож на GCI один, точнее его CLI (интерфейс командной строки – php-cli). Итак, как вы можете себе представить, нет веб-сервера, и нет HTTP_HOST.
PS: вы можете передавать данные (URL-адреса, имя хоста или что угодно) в качестве аргументов командной строки для PHP: использование командной строки
Дополнение:
$php -f cronjob.php HTTP_HOST=www.mysite.com #example <?php // cronjob.php $host = $_GET['HTTP_HOST']; // Get the host via GET params ?>
Если вы запускаете свой сценарий с терминала или задание cron, нет среды HTTP.
Возможным решением этого является запуск скрипта с помощью wget http://.../parameters
вместо имени php scriptname
.