【发布时间】:2013-07-07 10:13:46
【问题描述】:
我们有一个外部安全 FTP 服务器,我们想通过 HTTPS 访问它(我们的基础设施不支持 FTP)。我知道这是可能的,但我不知道怎么做。我正在寻找这样的东西: ftp://ftp.mozilla.org/pub/mozilla.org/zz http://ftp.mozilla.org/pub/mozilla.org/zz
谢谢!
【问题讨论】:
我们有一个外部安全 FTP 服务器,我们想通过 HTTPS 访问它(我们的基础设施不支持 FTP)。我知道这是可能的,但我不知道怎么做。我正在寻找这样的东西: ftp://ftp.mozilla.org/pub/mozilla.org/zz http://ftp.mozilla.org/pub/mozilla.org/zz
谢谢!
【问题讨论】:
澄清一下:正如 SLaks 所说,FTP 和 HTTP 是两个完全不同的东西。您发布的链接使用两个单独的协议。一个是ftp,一个是http。您似乎对第二个链接感到困惑,因为它仍然包含 ftp。那里发生的事情是“ftp.mozilla.org”是该服务器的域名。页面本身看起来很相似,因为没有您引用的实际页面(您正在访问目录本身)并且该目录中没有指定默认页面(例如,没有 index.html)。
这种情况下的默认行为是简单地列出目录内容,这几乎就是 ftp 协议所做的。
所以:
您将需要在 ftp 服务器(物理机)上安装 Web 服务器程序(不是 ftp 服务器程序!)并让用户使用 http(s) 协议下载文件,或者您将按照 SLaks 的建议需要创建您自己的代理(或找到一个存在的代理),它将接收来自 http 协议的命令并将它们转换为等效的 ftp 命令,然后将其发送到 ftp 服务器。
我个人推荐前者,因为它不太复杂。
【讨论】:
FTP 和 HTTP 是两个互不相干的不同协议。
您需要运行一个 HTTP 服务器。
您可以运行一个公开相同文件的 HTTP 服务器(就像 Mozilla 一样),或者为 FTP 服务器编写一个 HTTP 代理。
【讨论】:
听起来您正在寻找基于 Web 的 FTP 客户端。 http://www.net2ftp.com/ 是一个很好的起点,但您必须在网络中适当地配置隧道。像 net2ftp 这样的解决方案会将流量以 HTTP 的形式传入和传出服务器,然后运行本地脚本。
您还需要记住,除了 SFTP/FTP 之外,您的网络管理员还可以打开其他文件协议。向他们询问私有 SSH 密钥替代方案,这将避免面向公众的基于 Web 的 FTP 服务器/客户端解决方案。
【讨论】: