많은 사람들과 마찬가지로 저는 PHP의 shell_exec() 함수에 문제가 있습니다. 안전 모드가 비활성화되어 있으며 php.ini에서 disabled_functions가 삭제되었습니다.shell_exec() 및 exec()가 PHP에서 작동하지 않습니다.
터미널 (php print.php)에서 PHP 스크립트를 실행하면 완벽하게 작동하지만 웹 브라우저에서 실행하면 아무런 반응이 없습니다.
<?php
$output = shell_exec('lp print.php');
echo "<pre>$output</pre>";
?>
이 제발 도와주세요 : 여기
는 scipt입니다. Apache2에서 PHP 5.3.10을 실행 중입니다. 내 OS는 우분투 서버 12.4입니다. 다음은 phpinfo 페이지입니다. http://testni-server.info/info.php
명령 줄과 웹 서버는 완전히 다른 두 가지 환경입니다. CLI는 쉘 환경에서 사용자 ID로 실행됩니다. 웹 서버 아래에서 웹 서버의 쉘 환경과 함께 웹 서버의 userID로 실행됩니다. 그것은 의미없는 비교입니다 - 사과와 오렌지. 유일한 공통점은 둘 다 과일입니다 (예 : 둘 다 PHP 임). –
나는이 똑같은 유형의 문제로 책상에 머리를 두드 리고 있었다. 나는 마침내 shell_exec ('stuff_here 2> & 1')이 나에게 무엇이 잘못 될지에 대한 오류를 줄 것이라고 알았다. 그런 다음 문제를 해결하기 위해 문제를 해결할 수있었습니다. –