php 将文件发送到ftp服务器

gblwokeq  于 2023-01-29  发布在  PHP
关注(0)|答案(1)|浏览(154)

我需要传输创建的文件,但一直收到以下错误:
警告:ftp_put():无法打开数据连接以传输"/server.txt "
我可以通过ftp应用程序访问ftp,也可以通过应用程序创建和传输文件,但当我试图通过PHP做同样的事情时,它不起作用。
这是我的准则。

$serverFile = "server.txt";
$localfile = "/var/sites/store/publish/store-201908-1323-rev9286/www/text.txt";
$localfile = "text.txt";

//Connect to ftp
$ftp_server = "111.111.111.11";
$ftp_user_name = "username";
$ftp_user_pass = "password";

/*set up basic ssl connection*/
$ftp = ftp_ssl_connect($ftp_server);

// login with username and password
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);
ftp_pasv($ftp, true);

if($login_result){
    if (ftp_put($ftp, $serverFile, $localfile, FTP_ASCII))
    {
        Mage::log("successfully uploaded \n",null,"ftp.log");
    }
}

ftp_close($ftp);

我在这里错过了什么,我没有访问权,以改变任何文件传输协议服务器,但我知道,我们已经远程放置文件在服务器之前。
这也是我在WinSCP中使用的FTP连接的屏幕截图。我试过添加端口。我也试过在服务器上创建一个文件并执行ftp_get,但得到了相同的结果。

h9a6wy2h

h9a6wy2h1#

我检查了你的代码,server.txt文件将是root的路径。
通常,ftp用户对root没有write权限。
请创建一个777权限的新目录并尝试上传。

相关问题