>  기사  >  백엔드 개발  >  PHP_php 팁을 사용하여 Linux 명령 호출에 대한 권한 부족에 대한 솔루션

PHP_php 팁을 사용하여 Linux 명령 호출에 대한 권한 부족에 대한 솔루션

WBOY
WBOY원래의
2016-05-16 20:23:531258검색

비즈니스 배경: yourcmd는 내 Linux 프로그램입니다. PHP를 사용하여 yourcmd 프로그램을 실행할 때 매우 엄격한 권한 요구 사항이 있습니다.

시스템: CentOS 6.3

apache는 php의 실행 사용자입니다

exec 함수를 사용하여 Linux 시스템에서 /usr/local/yourcmd/sbin/yourcmd 프로그램을 실행합니다

php 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

$conf_file = "/var/www/html/webroot/test.tmp";
$command = "sudo /usr/local/yourcmd/sbin/yourcmd -t -f {$conf_file}";
exec($command,$out);
print_r($out);

테스트 결과는 무허가
코드 복사 코드는 다음과 같습니다.

배열([0] => sudo: tty가 없고 Askpass 프로그램이 지정되지 않음)

해결 단계:
코드 복사 코드는 다음과 같습니다.

$비주도

1) 다음 줄을 주석으로 처리하세요
코드 복사 코드는 다음과 같습니다.

#기본값 필수

2) 파일 끝에 다음
을 추가합니다.
코드 복사 코드는 다음과 같습니다.

아파치 ALL=(ALL) NOPASSWD: ALL
Cmnd_Alias ​​​​yourcmd = /usr/local/yourcmd/sbin/yourcmd

최종 테스트 결과
코드 복사 코드는 다음과 같습니다.

배열( [0] => 경고: 메모리가 너무 작습니다: 1044725760 [1] => 테스트 구성이 괜찮습니다 )
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.