问题标签 [passive-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ftp - FTP数据连接重用
我正在开发一个 FTP 客户端,我正在尝试了解数据连接的工作流程。
据我了解,在command
您退出之前,初始 ( ) 连接是永久的。但是,我不确定数据连接 - 它是否按命令重新启动?所以你打电话PORT ...
or PASV
,得到第二个连接,做 a LIST
,得到结果,连接关闭,重新开始?
另外,每次连接关闭后是否需要再次调用PASV
(或)?PORT ...
似乎当我尝试使用被动连接测试某些东西时,在第一个命令返回结果并关闭数据连接后,我无法重新连接到同一个端口。我可以继续调用PASV
-> Data Connect -> Run Command -> Get Results -> Data Connection closed -> PASV
,但这似乎不是它的运行方式?
另外,如果有人在 FTP 上有比 RFC 更简洁的好材料,我真的很感激。
vim - 可以将 vim 配置为使用备用 ftp 客户端吗
这篇文章与我最近输入的一个超级用户帖子有关。我在这里重新提出这个问题,因为我觉得可能涉及重建 vim 或高级配置。
当我输入编辑命令时,我正在尝试将 vim 配置为使用被动 ftp
: e ftp://ics@steamboy//home/ics/.bashrc
现在我收到一条错误消息,表明我们的卡巴斯基反病毒软件正在阻止活动的 ftp。
我相信 vim 7.4 已经内置了 ftp。我已经搜索了 vim 帮助,看看是否有变量可以设置为使用不同的命令行 ftp 客户端,比如passive_ftp。除了设置 scp 客户端外,我找不到任何东西。
任何解决此问题的建议或信息链接将不胜感激。
php - 如何检查何时必须使用 ftp_pasv?
就像在这个问题中讨论的那样,ftp_fget
当我在本地开发环境中时,我无法从 FTP 下载文件:
警告:ftp_fget():为 myFile.csv 打开 BINARY 模式数据连接
正如建议的那样,使用ftp_pasv($conn_id, TRUE);
效果很好,但是当我在生产服务器上时,我不想使用 FTP 被动模式。
如何检查何时ftp_pasv
必须使用?
我试过这个:
但它给了我:
警告:ftp_fget():数据连接意外关闭,文件传输 /myFile.csv 被客户端中止。
vb.net - 远程服务器上的错误:227 Entering Passive Mode(xxx,xxx,xxx,xx)
我尝试从 FTP 下载 .bak 文件并将其保存到我电脑的本地目录中。
这是我的代码:
当我执行代码时,我收到此错误:
我知道我需要将其更改为活动模式,但我找不到与我的代码正常工作的方法。我该如何解决?谢谢
c# - 在被动模式下,一台服务器上的 FTP 上传失败
我的 C# FTP 上传脚本和新文件服务器出现问题。我用于上传的脚本在我的旧文件服务器上运行良好,但抛出:
当我尝试上传数据时。
切换到活动模式时,我也遇到了一个异常:
奇怪的是:如果我通过 ftp 客户端上传数据,它可以在两台服务器上运行,所以我的猜测是我的脚本中的某些内容可能丢失了。
有没有人暗示我可能是什么问题?正如我所提到的,该脚本在我的旧服务器上运行良好,我和我的服务器管理员认为两台服务器的设置相似。
谢谢!
java - ApacheCommons FTPClient 和 enterLocalPassiveMode() 使用了哪些端口?
本质上,我的防火墙存在问题,导致我的应用程序在尝试使用 FTP 存储文件时挂起。
我发现这与我的防火墙允许通过端口访问有关。
我将连接端口设置为 21(我相信这也是默认值),然后设置
我试图允许通过防火墙上的端口 21 进行访问,但它不起作用。
我注意到如果我尝试登录
这将是每个上传项目的随机端口,通常在 30k-50k 范围内。
我的应用程序确实允许“主动”模式,但由于这是一个将被许多用户使用的应用程序,因此“被动”似乎更受欢迎,但用户可能会遇到与我相同的错误。
所以我唯一能想到的是
以某种方式允许我的防火墙上的范围**(我没有看到范围的选项,因为其他值都是单端口)**
找到某种方式来使用单个被动端口,如果这是它正在经历的事情(似乎是这种情况)
不要使用被动模式。似乎很多帖子都推荐被动,但我不确定为什么它是完全需要的,为什么不首选主动?
根据http://wiki.apache.org/commons/Net/FrequentlyAskedQuestions
您可以调用 FTPClient.enterLocalPassiveMode() 来启用被动模式。从那时起,FTPClient 将在每次打开数据连接时发出 PASV 命令,直到您通过调用 enterLocalActiveMode() 更改数据连接模式或关闭连接。我很好奇是否有人知道我的最佳行动方案应该是什么?我不确定这是一个编程问题,还是更适合另一个“堆栈社区”?
所以它似乎最初处于活动模式。
谢谢你的帮助!
php - 自定义 PHP FTP 服务器:客户端在发送 LIST 命令后断开连接
我将从头开始编写一个 FTP 服务器,主要是为了了解客户端/套接字 FTP 通信是如何工作的,并尝试开发一些自定义功能。
我对服务器如何处理PASV
从客户端接收到的命令表示怀疑,因为当我尝试实例化一个新端口时,客户端正在断开连接。
这是我正在处理的完整 PHP 代码:
这是守护进程启动时的服务器日志
而这是客户端命令提示符:
java - 使用 FTP Apache Java 实现传输文件的问题
我正在使用带有 JAVA 的 FTP 传输文件。我正在使用来自 Apache 的FTPClient和FTPServer 。但在特定环境中,有时文件不会传输。我在登录方法调用之前从FTPClient调用enterLocalPassiveMode方法,但有时文件没有传输。
- storeFile方法返回“false”。
- getReplyString方法返回“ 200 Command TYPE OK”。
- list 方法返回“227”。
当文件传输成功时:
- list方法返回 150 。
- getReplyString方法返回“ 150 文件状态正常;即将打开数据连接”。
客户端代码:
服务器代码:
这是防火墙问题吗?
我尝试使用DataConnectionConfigurationFactory类中的setPassivePorts方法在服务器端设置被动端口范围,但问题仍然存在。
是否有任何形式可以在客户端设置端口范围?如何检查连接是否真的使用被动模式?
提前致谢。
ftp - Windows 2012 R2 FTP 服务器 IIS 8 被动模式不起作用
我已经使用 IIS 8 在 Windows 2012 R2 上设置了一个 FTP 服务器,并且在从客户端计算机连接时,除了被动模式外,一切正常。如何解决?
sockets - FTP,被动模式。无法分配请求的地址
我无法连接到数据端口。我能够连接到 21 命令端口,发送用户名和密码。然后我发送PASV\r\n
。我得到响应并计算数据端口A * 256 + B = new_port
。问题是我无法连接到这个端口。为了创建套接字,我正在使用createRemoteConnection()
函数。这被使用了两次,第一次用于命令端口,我通过那里new_port
,然后我再次调用它。请问你能帮帮我吗?谢谢你。
-