我找到了解决方案:
它使用 php 通过 FTP 上传文件。代码如下:
$ftp_server = "server";
$ftp_username = "username";
$ftp_password = "password";
$connection = ftp_connect($ftp_server) or die("could not connect to $ftp_server");
if(@ftp_login($connection, $ftp_username, $ftp_password))
{ ftp_put($connection, $folder_destination, $location_original_file, FTP_BINARY) or die("could not find directory");
} else { }
ftp_close($connection);
我花了很长时间才弄清楚出现的意外错误。所以要记住几点:
1) 确保 $folder_destination 是分配给您创建的 ftp 用户的文件夹内的目录。
2)$location_original_file
必须是保存图片的目录(与您在 php 代码中引用图片的目录相同)。
3) FTP_ASCII 不适用于图片。它必须是 FTP_BINARY(至少 FTP_ASCII 对我不起作用);最后,确保您必须使用 ftp 访问的所有文件夹都具有可写权限。
4) 由于某些原因,ftp_put 无法读取上传的文件。我不知道为什么。就像我打开ftp连接时,它丢失了用户上传的文件。所以,我所做的是首先将文件保存在同一域中的目录中,甚至在打开 ftp 连接之前(我最后这样做),然后我将保存的文件移动到另一个域。我需要移动已修改的上传图片的几个版本,所以我先进行了所有修改,将修改后的版本保存在同一个域中,然后将所有这些保存的文件移动到新域中各自的目录中。
就是这样。