如何解决phpftp_put失败的问题
本篇文章给大家分享的是有关如何解决php ftp_put失败的问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、网络空间、营销软件、网站建设、临夏网站维护、网站推广。
php ftp_put失败的解决办法:首先打开“Upload/Driver/Ftp.class.php”;然后使用“ftp_pasv($this->link,true);”方法切换到被动模式;最后在客户端重新上传文件即可。
PHP Upload FTP驱动 ftp_put 函数上传失败问题
2台服务器,一台做ftp服务器,一台做web服务器。
我使用的thinkphp3.2得Upload类,使用了上传FTP驱动,但是每次都说文件保存失败。
我寻找答案,异步和同步都测试,都不行,远程端/tmp/ 和ftp目录也有777权限。
Thinkphp应该很成熟,后面我在官方的文档找到了一些答案,其中有解释模式
ftp服务器主动模式,ftp服务器被动模式,我使用 ftp_pasv($this->link,true); 切换到被动模式,客户端就可以顺利上传文件了。
下面是解决方案
Upload/Driver/Ftp.class.php sava函数
public function save($file, $replace=true) { $filename = $file['rootPath']. $file['savepath'] . $file['savename']; /* 不覆盖同名文件 */ // if (!$replace && is_file($filename)) { // $this->error = '存在同名文件' . $file['savename']; // return false; // } ftp_pasv($this->link,true); ftp_pwd($this->link); $filename=$file['savename']; if (!ftp_put($this->link, $filename, $file['tmp_name'],FTP_ASCII)) { $this->error = '文件上传FTP错误!'; return false; } return true; }
以上就是如何解决php ftp_put失败的问题,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
文章名称:如何解决phpftp_put失败的问题
网页地址:http://azwzsj.com/article/jgheco.html