У меня есть следующий скрипт -Запуск webkit2png из PHP скрипт работает в терминале, но не в браузере
<?php
$command = "python webkit2png/webkit2png -D screenshots http://stackoverflow.com";
$command = escapeshellcmd($command);
system($command);
При запуске из терминала с помощью
php test.php
производит скриншоты веб-сайт , однако открытие test.php в браузере не приносит никаких результатов.
Оба сценария python и php принадлежат пользователю _www, под которым выполняется apache. Я даже попытался запустить test.php под _www в Terminal, он все еще работает. Есть что-то, что мне не хватает?
Благодаря @amccausl Я нашел это в апаче журналы -
Wed Feb 27 07:12:03 mini.local python[83331] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.
Traceback (most recent call last):
File "webkit2png/webkit2png", line 353, in <module>
if __name__ == '__main__' : main()
File "webkit2png/webkit2png", line 324, in main
AppKit.NSBorderlessWindowMask, 2, 0)
objc.error: NSInternalInconsistencyException - Error (1002) creating CGSWindow
Вы должны проверить свой журнал ошибок apache. Но вы также можете попробовать sshing в свой собственный ящик для запуска в командной строке (чтобы изолировать любые проблемы с попыткой визуализации webkit без подключения терминала). – amccausl