解决PHP ftp_put(): php_connect_nonb() failed: No error (0)

21-12-16 16:12 字数 310 阅读 633

连接上ftp服务器后,发现 ftp_nlist 和 ftp_put 都会报这个No error的错,导致无法列出目录下的文件,也没办法上传文件。

解决办法是设置一个参数 FTP_USEPASVADDRESS 注意要放到设置被动模式的代码前。

ftp_set_option($conn, FTP_USEPASVADDRESS, false);
ftp_pasv($conn, true); // 被动模式

至于这个参数是干啥的,文档上的解释如下

当此选项禁用时,PHP 会忽略掉 FTP 服务器通过 PASV 命令返回的 IP 地址,直接使用在 ftp_connect() 中指定的地址。value 参数必须是布尔型。

0人点赞>
关注 收藏 改进 举报
0 条评论
排序方式 时间 投票
快来抢占一楼吧
请登录后发表评论
站长 @ 十七度
文章
368
粉丝
23
喜欢
181
收藏
29
排名 : 1
访问 : 93.22万
私信