在端口80上运行FTP服务器以及networkingstream量

我有一个win 2k3服务器上运行两个站点+ IIS虚拟文件夹(w3root)的IIS。 我想知道是否有任何方法通过使用ftp服务器上的端口80来搭载该pipe道上的FTP通信。

我将如何做到这一点,并保持networking的东西不间断地运行?

不,您不能在同一个IP地址的同一个TCP端口上运行HTTP和FTP。 如果您正在寻找通过端口80将file upload到Web服务器的方法,则可以selectWebDAV 。

您可能会对在Server 2003上使用WebDAV和IIS的教程感兴趣。

不要忘记安全! FTP是一个过时的,不安全的协议,除了匿名下载以外,不应该在公共互联网上使用。 FTP以明文forms发送您的用户名/密码和您的数据。 SFTP和FTPS是合理的select。

如果您始终无法使用SSL,启用摘要式身份validation将会阻止您的WebDAVlogin密码以明文forms发送。

您可以只使用HTTP服务器来提供目录。

另外,您可以使用squid代理在您的http服务器上放置一些请求,并且可以向ftp服务器请求其他(http)请求。

但是,不,原则上你不能把两个程序放在一个端口上。

您也可以添加一个FTP绑定到该网站。 它不会在端口80上运行,但会允许FTP用于相同的内容文件夹。

您可以使用端口统一在同一个端口上绑定两个协议。 你可能不得不在这个端口上编写你自己的应用程序,尽pipe它和sslh类似。

本质上,这个应用程序将侦听端口80,并根据它获取请求来分派请求。 由于HTTP是客户端首先谈话的协议,而FTP是服务器首先谈话的协议,所以您必须等待x毫秒来查看客户端是否发送了HTTP请求。 如果是这样,请将其发送到您的实际HTTP服务器(可能有效地在另一个端口上运行),否则,请将连接发送到您的FTP服务器。

您原则上可以有多个协议,客户端首先会说话,然后尝试通过查看请求来检测使用哪个协议。 服务器首先谈话的地方不能有多个协议。

这显然不是解决这个问题的“干净的”方式,它主要是一种解决方法,可以在你不控制networking的环境中使用,也可以在你可以使用的端口上放置限制(可能是任意的)。 否则,坚持每个协议的官方端口最好。 如果您被限制使用HTTP,WebDAV可以成为FTP的合理替代scheme。