2011-09-12 2 views
1

저는 꽤 이상한 문제가 있습니다. 웹 응용 프로그램이 한 서버에서 다른 서버로 이동했습니다. 그 이후로 FTP 업로드가 더 이상 작동하지 않습니다.PHP FTP 파일 업로드가 작동하지 않습니다.

$ftp = ftp_connect('ftphost'); 
if ($ftp == false) { 
    error_log('FTP Connect not possible'); 
} 
$fp = fopen($filename, 'r'); 
if ($fp == false) { 
    error_log('Opening file not possible'); 
} 
$login = ftp_login($ftp, 'username', 'password'); 

if ($login == false) { 
    error_log('FTP login not possible'); 
} 

$status = ftp_fput($ftp, basename($filename), $fp, FTP_BINARY); 
if ($status == false) { 
    error_log('FTP file upload not possible'); 
} 

오류 메시지는 'FTP 파일을 업로드 할 수 없음'입니다. 나는 내가 아는 모든 것을 검사했다. Selinux가 비활성화되었습니다. 내가 손으로 FTP 업로드를 할 때 ("ftp"도구가있는 콘솔에서) 작동합니다. 파일 이름은 무작위로 생성되며 항상 다음과 같이 표시됩니다. erefsdgftef.xml (공백 없음)

이 코드는 Magento의 마지막 주문 단계의 일부이므로 항상 apache httpd를 통해 시작됩니다.

이전에 게시 한 것보다 많은 오류 메시지가 표시되지 않습니다.

새 서버에서는 서버 구성과 관련된 내용이 달라야합니다. 누군가 아이디어가 더 많습니까?

+1

서버 오류가 아니어야합니까? –

+0

ftp_pasv는 어떨까요? ftp가 활성 연결을 지원하지 않을 수 있습니까? (나는 모르겠다.) – MiPnamic

+0

같은 사용자 이름 + 암호를 사용하여 동일한 FTP 서버에 수동으로 로그인 할 수 있다면 코드 문제 인 것처럼 들린다. 서버에 연결할 수 있기 때문에 DNS 또는 라우팅은 문제가되지 않습니다. 당신은 basename ($ filename)이 예상대로 보이는지 확인할 수 있습니다. – cloakedninjas

답변

0

답이 맞는지 확실하지 않지만 수동 모드에서 이미 시도 했습니까?

http://nl3.php.net/manual/en/function.ftp-pasv.php

+0

MiPnamic 조금 더 일찍했다 –

+0

내가 쓴. 콘솔에서 해보 았는데 활성 연결로 작동했습니다. 그리고 이전 서버에서도 작동합니다. –

관련 문제