我在使用carb(ruby curl绑定)进行ftp下载时遇到问题。
当扩展被动模式失败时,路缘看起来不会回到简单被动模式。从日志中提取如下:
< 250 Directory changed to /outgoing/productcatalog/35591
> EPSV
* Connect data stream passively
< 229 Entering Passive Mode (|||40938|)
* Trying 216.34.207.42... * Connecting to 216.34.207.42 (216.34.207.42) port 40938
* Connection failed
* Expire cleared
* Closing connection #0
然后in抛出curl::err::connectionfailedror:无法连接到服务器
但是,如果在命令行中使用curl,则
< 250 Directory changed to /outgoing/productcatalog/35591
> EPSV
* Connect data stream passively
< 229 Entering Passive Mode (|||43267|)
* Trying 216.34.207.42... Connection refused
* couldn't connect to host
* got positive EPSV response, but can't connect. Disabling EPSV
> PASV
< 227 Entering Passive Mode (216,34,207,42,169,4)
* Trying 216.34.207.42... connected
解决方案是完全禁用epsv,但使用crub似乎是不可能的,没有这样的选择在这种情况下能做什么?
最佳答案
禁用EPSV的libcurl选项是一个简单的布尔选项,加铺应该已经支持许多其他类似的选项添加对此的支持应该相当简单。
关于ruby - 遏制epsv问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1952511/