Использование PHP и Xvfb - PullRequest
       14

Использование PHP и Xvfb

5 голосов
/ 16 марта 2009

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

"DISPLAY =: 12 firefox -saveimage http://www.google.com/".

Проблема в том, что когда я пытаюсь сделать систему ("DISPLAY =: 12 firefox -saveimage http://www.google.com"); не работает. У меня такое ощущение, что это не выполняется в обычной среде оболочки. Я пошел против своей Лучшее суждение и предоставило пользователю apache настоящую оболочку. Если я выполнил команду apache и выполнил команду, все в порядке и работает, как и ожидалось, но опять-таки, это не работает из системного вызова. Любое понимание очень приветствуется.

Ответы [ 2 ]

3 голосов
/ 17 марта 2009

Я нашел решение.

Мне просто нужно было создать скрипт оболочки, который будет вызывать это для меня. Поработав некоторое время, я заработал, добавив export HOME="/var/www/" вверху скрипта.

Надеюсь, это поможет кому-то еще.

0 голосов
/ 16 марта 2009

Скорее всего, существует некоторая зависимость от переменных среды, которые вы установили как пользователь оболочки, которые не выполняются средой httpd. Однако прежде чем приступить к героическим действиям с окружающей средой, я бы порекомендовал захватить stderr с вашей работы (например, добавив 2>/tmp/imgcaperrlog в конец) и посмотреть, не подает ли он какие-либо жалобы. *

...