2012-08-04 4 views
4

PHP를 사용하여 HTML에서 PDF를 생성하려고합니다. 이 코드를 프로덕션 리눅스 서버에서 실행하고 싶지만 Mac OS X을 개발 환경으로 사용하고 있습니다.wkhtmltopdf를 사용할 때 php shell exec가 중단됩니다.

은 지금까지 내가 가지고 :

$url = escapeshellarg("http://www.google.com/"); 
$output = shell_exec("/usr/local/Cellar/wkhtmltopdf/0.11.0_rc1/bin/wkhtmltopdf " . $url . " /tmp/tmp_pdf.pdf 2>&1"); 
echo "<pre>$output</pre>"; 

이 코드는 /tmp/tmp_pdf.pdf에서 PDF를 생성 않습니다. 문제는

그것 shell_exec 명령이 완료되지 않을 거의 것처럼 .... 그것은 결코

echo "<pre>$output</pre>"; 

브라우저는 단지 서버를 기다리고 말을 달려 있습니다하지 않습니다이다. 터미널에서 wkhtmltopdf를 실행하면 명령 행으로 돌아 가지 않습니다. 내가 얻을 :

Loading page (1/2) 
Printing pages (2/2)            
Done 

는 그런 다음 PHP 스크립트와 유사한,도 앉아있다. 어떤 아이디어?

+0

서버를 기다리는 것을 어떻게 알 수 있습니까? – hakre

+1

어떤 버전의 wkhtmltopdf를 사용하고 있습니까? OS X 10.7.4에서 wkhtmltopdf-0.9.9-OS-X.i368 정적 바이너리를 테스트하고 "완료"를 출력 한 직후 명령 줄로 돌아 왔습니다. – rexmac

+0

@rexmac 대단히 감사합니다. 나는 wbhtmltopdf를 설치하기 위해 자작을 사용했다. 정적 바이너리를 사용하여 내 문제가 해결되었습니다. – tdh87

답변

0

문제는 버전 번호가 rexmac 인 것으로 지적되었습니다. wkhtmltopdf에 정적 바이너리를 사용하면 OP 문제가 해결되었습니다.

관련 문제