내 USB 카메라로 jpg를 캡처하기 위해 fswebcam을 호출하는 스크립트가 있습니다. 나는 "chmod를 + X webcam.sh"로 그것을 실행했습니다 :raspbian에서 PHP로 bash 스크립트 실행
파일 : /var/www/html/webcam.sh
#!/bin/bash
DATE=$(date + "%Y-%m-%d_%H%M")
fswebcam -r 640x480 /home/pi/webcam/$DATE.jpg
이 그렇게, sudo는하지 않고 명령 줄에서 잘 작동 나는 작은 PHP 페이지를 만들었어요 :
파일 : /var/www/html/index.php
<?php
$output = shell_exec('sh /var/www/html/webcam.sh');
echo "<pre>$output</pre>";
?>
내가 웹 페이지에 갈 때, 난 그냥 빈 페이지를 얻고 더 JPG이 만들어지지 않습니다 내 웹캠 폴더에 있습니다. 그래서 Apache2 error log
I가, PHP에서 내 전화를 수정하려고했습니다 :
나는 다음과 같은 오류 있어요 나는 또한 파일의 sudoers에 다음을 추가 한<?php
$output = shell_exec('/usr/bin/sudo /bin/bash /var/www/html/webcam.sh');
echo "<pre>$output</pre>";
?>
을
www-data ALL=NOPASSWD: /path/to/script
하지만 여전히 오류가 발생합니다. apache2 log error
나는이 스레드에서 모든 것을 시도했다 : How to run .sh script with php?
당신은 생각을 가지고 있니? 사전에
감사합니다,
빅터
여전히 작동하지 않는다면 스크립트의 출력을 게시하십시오. – d3L
위 코드를 시도했지만 서버에서 오류가 발생했습니다. HTTP 오류 500입니다. 오류 로그에 다음과 같이 표시됩니다. "PHP 구문 분석 오류 : 구문 오류,/var/www의 예기치 않은 'echo'(T_ECHO) /html/index.php on line 3 "을 참조하십시오. 그 에코 라인에 주석을 달면 오류 로그에 "빈 장치를 열었습니다 :/dev/video0 open : Permission denied"라고 표시됩니다. –
지금 작동 중입니다. 허가에 대해 나에게 한 마지막 말을 확인해 봤어. 그래서 나는 서버에 "adduser www-data video"로 카메라에 접근 할 수있는 권한을 주었고 "chown -R www-data/home/pi/webcam"이라는 폴더를 쓸 권한을 주었다. –