ftp_fget
및 fgetcsv
기능을 사용하여 먼 서버에서 CSV 파일을 읽으려고합니다. 먼 거리의 서버에서 파일을 읽을 때 이미 여러 번 연습하고 있으며 지금까지 제대로 작동합니다."ftp_fget"이 (가) "bind() failed : Permission denied (13)"를 반환하는 이유는 무엇입니까?
ftp_fget이이 오류를 반환하는 이유를 알 수 없습니다 : bind() failed: Permission denied (13)
. 또한이 오류 메시지에 대한 실제 설명도 찾을 수 없습니다.
저에게 먼 서버 액세스 권한을 부여한 클라이언트는 Windows 서버이라고 말했습니다. FTP 서버 변수의
$distant_folder = "/myfolder/";
$filename = "myfile.csv";
$ftpstream = ftp_connect($ftp_server);
$login = ftp_login($ftpstream, $ftp_user, $ftp_pass);
if($login){
$tmp_handle = fopen('php://temp', 'r+');
if (ftp_fget($ftpstream, $tmp_handle, $distant_folder.$filename, FTP_ASCII)){
// do stuff with fgetcsv()...
}
}
주의하시기 바랍니다 값은 기밀 이유로 숨겨져 있습니다.
편집 : 해결책을 찾았습니다!
나는 ftplogin()
과 ftp_fget()
사이에 ftp_pasv($ftpstream, true);
을 사용했습니다.
참고 : 해결 된 문제가있는 스크립트 –