다른 유사한 라인이 작동하고 있음에도 불구하고 쉘 명령 중 하나가 실행되지 않습니다. Ubuntu 12.04 기반 OS를 사용하는 Linux 컴퓨터에서 실행됩니다. 나는 exec도 사용하려고 시도했지만 여전히 작동하지 않는다.PHP exec 연산자가 특정 명령을 실행하지 않습니다.
저는 실제로이 작업이 어느 시점에서 행해졌습니다. (명령 출력 대기 중) 문제가 발생하여 출력을/dev/null로 리디렉션하고 있습니다. 개발에서 무언가가 바뀌 었습니다. 우리는 데비안 패키지를 만들었고 설치 패키지를 실행 했으므로 파일을 덮어 쓸 때 사용 권한이 변경되어 모든 사용자/그룹/소유자에게 읽기/쓰기/실행을 추가했지만 그 중 하나는 작동하지 않는다고 생각했습니다 .
코드
은 여기에 있습니다 :if(isset($_POST['activateXML']))
{
if (videoConsistencyCheck())
{
`cp {$fileXML} /apps/video/xml.xml`;
`sudo /apps/video/vsss restart >/dev/null 2>&1 &`;
systemUnvalidate();
header('Location: index.php?app='.$_GET['app']);
die();
}
}
나는 경우 문장의 첫 번째 행이 실행됩니다 것을 알고있다. 코드 줄은 실제 터미널에서 잘 작동하므로 문제가되지 않습니다. 나는 많은 인터넷 검색을했고 대답 할 수없는 대답은 조언이 도움이 될 것입니다.
편집 : 의도 한대로 명령을 호출 사실했지만 bash는 스크립트에서 내가 시작 - 정지 데몬이
편집 2를 작동하지 않는 호출 된 작동하지 않는 것처럼 보였다 그래서 무엇을 : 나는 테스트 PHP 파일을 만든 터미널에서 코드를 실행하고 sudo를 명령에 추가하여 start-stop-daemon 오류를 수정했지만 여전히 내 코드에서 작동하지 않습니다. 제출 버튼을 누르면이 코드를 호출합니다.
실행중인 PHP 사용자에게'/ apps/video/vsss'에 대한 실행 권한이 있습니까? –
위에서 언급 한 것처럼 'sudo chmod a + rwx/apps/video/vsss'를 수행했습니다. 특정 사용자를 추가해야한다고 제안하고 있습니까? 그렇다면 어떻게 PHP 코드가 사용하게 될 사용자를 결정할 수 있습니까? 이 경우처럼 실행 권한이없는 것 같습니다. – xsdf
실행되지 않는다는 표시는 무엇입니까? 무슨 일이야? –