PHP 기능이 작동하지 않나요?
문제 설명
PHP에서는 왜 system() 함수를 실행할 수 없나요?
질문 답변
PHP에서 system() 함수를 실행할 수 없습니다. 다음과 같은 상황이 있을 수 있습니다.
(1) 경고: 보안상의 이유로 system()이 비활성화되었습니다.
이 오류는 서버 보안으로 인해 발생합니다. 구성 변경 시스템 기능이 꺼진 경우 php.ini 파일을 열고 비활성화_기능 등호 뒤에 시스템을 제거하십시오.
(2) 경고: system() [function.system]: 포크할 수 없습니다
이 오류는 현재 사이트의 실행 계정이 cmd.exe에 액세스할 수 없기 때문에 발생합니다. Windowssystem32cmd.exe 속성을 찾아 해당 권한을 추가합니다. 현재 사이트의 실행 계정 또는 사용자 그룹 권한.
(3) 웹 접속 시에는 응답이나 오류가 없습니다. 단, php cli 명령줄을 사용하여 실행하면 정상적으로 결과가 반환될 수 있습니다. 이 오류는 일반적으로 Windows 시스템 경로를 사용할 수 있습니다. 프로그램에 액세스하는 절대 경로, 예:
system('D:\server\DLL\IECapt.exe --url=http://tech.cncms.com --out="D:\web\tt.fei.cn\htdocs\ttt\tech.png"');
이때 명령줄을 실행한 결과는 정확하지만 웹을 통해 액세스하면 오류 없이 빈 페이지가 반환됩니다.
수정 방법: 파일의 접근 경로를 상대 경로로 변경하고, IECapt.exe를 사이트 프로그램의 현재 디렉토리에 복사한 후 코드를 다음과 같이 변경합니다:
system('IECapt.exe --url=http://www.baidu.com --out=t/tech.png');
3 페이지를 다시 방문하면 출력은 다음과 같습니다. 정상.
PHP 관련 지식을 더 보려면 PHP 중국어 웹사이트를 방문하세요!
위 내용은 php 함수를 사용할 수 없습니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!