如何通过 HTTP 连接发送文件?

如何通过 HTTP 连接发送文件?

我的一位老师说,当你浏览启用了文件/目录列表的 Web 服务器(例如 apache2)时,它会秘密打开一个 ftp 服务器来传输文件。

这让我很困惑,尽管他在网络方面确实比我知道得多,但他无法向我解释让我理解。

如果我没有 ftp 服务器或正在运行的端口,那么该服务如何发送数据?apache2 是否内置了我不知道的 ftp?如果 apache2 目录列表请求文件,那么它是通过 HTTP 还是 FTP 发送的?

答案1

呃。你的老师说的一点都不正确。HTTP传输文件- 这就是它的工作原理。它不需要任何特殊操作,即使 Apache 目录列表看起来有点像 FTP 服务器列表。

查看浏览器 URL。使用 Wireshark 或 Fiddler 等工具实际查看流量。您会发现,如果您通过 HTTP 浏览,并且文件链接以 HTTP 开头,则您的下载将通过 HTTP 进行。

如果您可以使用其中一种工具自己完成此操作,请告诉您的老师,您希望课后与他一起复习。购买一台 Windows 笔记本电脑,将 Fiddler 放在 USB 上。一起做这个练习。如果老师被误导并向学生提供虚假信息,那么您就是在帮助他。

相关内容