2014-04-09 2 views
3

기본적으로 이미지를 서버에 업로드하는 스크립트가 PHP로 작성되어 있습니다. ftp 계정 자격 증명을 사용하여이 스크립트를 내 서버에 업로드하고 있습니다. 그러나 액세스하려고하면 로그인 오류가 발생합니다. 다음은 오류 로그입니다 :ftp_put() 로그인시 오류가 발생하여 ftp 및 php 스크립트를 사용하여 서버에 이미지를 업로드하는 중 오류가 발생했습니다.

09 4 월 2014 19시 0분 1초 아시아/콜카타] PHP 경고 : ftp_login() : 죄송합니다, 일반 텍스트 세션이 서버에서 허용되지 않습니다. in /home/gameeon/public_html/jts/local_upload.php on line 8 [09-Apr-2014 19:01:33 Asia/Kolkata] PHP 경고 : ftp_login() : 죄송합니다. 평문 세션이 허용되지 않습니다. 섬기는 사람. in /home/gameeon/public_html/jts/local_upload.php on line 8 [09-Apr-2014 19:01:55 Asia/Kolkata] PHP 경고 : ftp_login() : 죄송합니다. 평문 세션이 허용되지 않습니다. 섬기는 사람./home/gameeon/public_html/jts/local_upload.php on line 8 [09-Apr-2014 19:02:21 Asia/Kolkata] PHP 경고 : ftp_login() : 죄송합니다. 평문 세션이 승인되지 않았습니다. 섬기는 사람./home/gameeon/public_html/jts/local_upload.php on line 8 [09-Apr-2014 19:03:59 Asia/Kolkata] PHP 경고 : ftp_login() : 죄송합니다. 평문 세션이 허용되지 않습니다. 섬기는 사람.

<?php 
// connect and login to FTP server 
$ftp_server = "ftp.gameeon.in"; // enter the ftp host name 
$ftp_username = "[email protected]"; // put your ftp user name 
$ftp_userpass = "********"; // put your ftp password 

$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server"); 
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass); 

/// put the path of your image folder in your remote server i.e: 
$ftp_upload_path="public_html/img/"; 

/// put the path of your image folder in your local machine: 
$files = glob("E:/upload_images/*.*"); 

foreach($files as $fl) 
{ 

    $fl_arr = explode("/",$fl); 
    $cn=count($fl_arr); 
    $num=$cn-1; 
    $file=$fl_arr[$num]; 

    // upload file 
    // $fl = full path of localimages 

    if (ftp_put($ftp_conn, $ftp_upload_path.$file,$fl, FTP_ASCII)) 
    { 
     echo "Successfully uploaded $file. <br/>"; 
    } 
    else 
    { 
     echo "Error uploading $file.<br/>"; 
    } 
    sleep(3); /// pausing the code for 3 secs before next upload 

} 

// close connection 
ftp_close($ftp_conn); 
?> 

내가 더이 라인에 오류가 받고 있어요 : 다음과 같은 줄에 /home/gameeon/public_html/jts/local_upload.php 8

내 코드입니다. 8 인 :

$ftp_conn = ftp_ssl_connect($ftp_server) 
      or die("Could not connect to $ftp_server"); 

것은 당신이 localhost에서 작업하는 경우 : 서버가 명시 TLS/SSL

을 사용하고 있기 때문에

$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass); 
+0

[421 죄송합니다. 평문 세션은이 서버에서 허용되지 않습니다.] (http://stackoverflow.com/questions/11371947/421-sorry-cleart ext-sessions-are-not-on-this-server) –

+0

시도했지만 작동하지 않습니다. – user3515980

+0

여전히 같은 오류가 있습니까? –

답변

5

당신이 시도 ftp_ssl_connect() 기능을 대신 ftp_connect()를 사용할 필요가 오류가 발생할 수 있습니다.

ftp_put() : 1922. 에 대한 연결을 열지 않습니다.. * 뭔가 ..

그런 다음 ftp_pasv 기능을 사용해야합니다. 문서의로서는

: 패시브 모드

는, 데이터 접속은 클라이언트, 서버에서보다는 의해 개시된다. 클라이언트가 방화벽 뒤에있는 경우 필요할 수 있습니다.당신이 당신의 루프가 추가 바로 전에 당신이 명시 TLS/SSL를 사용하고 그것을 사용할 필요가 예 귀하의 경우에는

이 : 또한 /img/에 경로 public_html/img/를 설정하거나 어떤 디렉토리가 존재

ftp_pasv($ftp_conn, true); 

:

$ftp_upload_path = "/img/"; 
+0

로그인 연결 문제가 해결되었지만 이제 이미지를 업로드 할 수 없습니다. ( 스크립트는 서버의 이미지를 업로드하지 않으며 오류 로그 메시지도 표시되지 않습니다! – user3515980

+0

어디에서이 스크립트로 작업하고 있습니까? 원격 호스트 또는 로컬 호스트? 원격 호스트에서 원격 서버에서 이미지 경로를 확인하므로 이미지 경로가 작동하지 않습니다. 또한 FTP 액세스에'/ public_html/img' 폴더가 있는지 확인하십시오. –

+0

@ user3515980 내 편집보기 –

관련 문제