我正在尝试通过 PHP 中的 CURLFILE 将名称为 backup.zip 的文件发送到 google VM(虚拟机)。但是,我们执行该过程,该文件未到达Final目录。相同的脚本在本地和hostgator主机上均可工作。
以下脚本用于发送的CURL:
$file = 'backup.zip';
$ch = curl_init();
$cfile = new CURLFile($file,$file);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, array('file' => $cfile, 'filename'=>'name'));
curl_setopt($ch, CURLOPT_URL, 'https://registrobr.com.br/vdev/upload.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data'));
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_exec($ch);
curl_close($ch);
以下是通过 CURL (upload.php) 接收信息的代码:
$folder = './Final/';
$path = $folder . $_FILES['file']['name'];
if(move_uploaded_file($_FILES['file']['tmp_name'], $path)) {
echo "The file ". basename( $_FILES['file']['name']). " has been uploaded";
}