Я пытаюсь запустить скрипт phantomjs так:
$max_time = ini_get('max_execution_time');
set_time_limit(0);
$result = shell_exec($path_to_phantomjs);
// Do stuff with result here...
set_time_limit($max_time);
Это очищающий скрипт, который занимает несколько минут, но я хочу дождаться результата от него и манипулировать им на моем сервере. Для меня также важно, чтобы этот скрипт запускался со стороны клиента и возвращал ему некоторые результаты для анализа и т. Д.
Это происходит с ошибкой 504 от nginx, следует отметить, что тот же код работает достаточно хорошо на моем (локальном) сервере Apache.
Ошибка 504 означает, что nginx достигает таймаута при получении страницы из бэкэнда (php). Чтобы это исправить, вы должны увеличить значения следующих переменных в вашем прокси-сервере php до значения, превышающего время выполнения вашего скрипта (в секундах):
Других решений пока нет …