문제는 cURL을 사용하여 보안 폴더 (https://www.mydomain.com/myfolder/
)에 txt 파일을 업로드하는 것입니다.보안 폴더에 cURL을 사용하여 파일 게시 (https : //)
해당 폴더를 연결하는 데 관련된 ftp 세부 정보가 있습니다. 여기에 내 코드가 있지만 제대로 연결되지 않습니다 ...
아무도 내가이 코드에서 어떤 실수를했는지 알려 주시기 바랍니다. 이는 error_no 반환 파일
을 업로드 7하면서<?
if (isset($_POST['Submit'])) {
if ($_FILES['upload']['name']!="")
{
$localfile = $_FILES['upload']['tmp_name'];
$newfile = $_FILES['upload']['name'];
$ch = curl_init();
$url = 'ftp://ftp_login:[email protected]/myfolder/'.$newfile;
$fp = fopen ($localfile, "r");
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_UPLOAD, 1);
curl_setopt($ch, CURLOPT_INFILE, $fp);
curl_setopt($ch, CURLOPT_FTPASCII, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $newfile);
curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$result = curl_exec($ch);
echo curl_error($ch);
echo $error_no = curl_errno($ch);
curl_close($ch);
//echo $result;
if ($error_no == 0)
{
$error = 'File uploaded succesfully.';
}
else
{
$error = 'File upload error.';
}
}
else
{
$error = 'Please select a file.';
}
}
?>
FTP와 HTTPS는 서로 다른 프로토콜입니다. FTP는 기본적으로 SSL을 지원하지 않습니다. – Borealid