shell_exec 명령을 사용하여 파일을 다른 서버로 FTP 전송할 수 있습니다. 이는 공유 서버 fastCGI가 시간 종료되기 때문입니다. 그래서 다른 명령을 사용할 수 없습니다.PHP에서 shell_exec을 사용하여
어떻게 구현합니까? 나는 DOS 창에서 내 PC에 스크립트를 테스트하고 작동하지만, 서버에서 코드를 사용하여 :
ftp: s: unknown option
배치 파일은 다음과 같습니다 :
나는 다음과 같은 오류가$output = shell_exec('ftp -s:ftpscript.txt');
echo "<pre>$output</pre>";
을
open ftp.server.com
usernamex
passwordx
hash
cd incoming
binary
ls
아이디어가 있으십니까?
배경 : PHP를 사용하여 Amazon AWS Glacier로 파일을 업로드하지만 크기가 큰 파일 (750Mb)이 시간 초과되고 fastCGI (?) 시간 초과로 인해 500 내부 서버 오류가보고됩니다. FTP를 사용하여 큰 파일을 업로드하는 방법을 찾아야합니다. 스트림 작업에 소요되는 시간은 스크립트의 시간 제한에 포함되지해야하기 때문에 * nix에서 스크립트에
앙드레
Dreamhost의 참고 사항 : 스크립트가 웹 브라우저를 통해로드되면 큰 파일에서 시간이 초과되는 것처럼 보이는 fastcgi 제한 사항이 적용됩니다.여기서 문제는 공유 호스팅 서버에서 fastcgi 시간 초과를 수정할 수 없도록하는 것입니다. 쉘 명령 행에서 스크립트를 수행하면 오류 메시지가 표시되지 않습니다. – andrebruton
@andrebruton 컬 커맨드 라인 바이너리를 제공하지 않습니까? 또한, 웹 브라우저에서이 작업을 수행 할 필요가 있습니까 (브라우저가 대기하는 대신 웹 브라우저에서 처리하고 프로세스를 분리하는'exec()'PHP 스크립트를 사용할 수 없습니까? 파일이 다운로드됩니까?) – DaveRandom
코드 작성 방법에 대한 아이디어가 있습니까? 실제 사례? 웹 페이지에서 전송 만 할 수 있으며, 내가 아는 다른 액세스는 불가능합니다 ... – andrebruton