如何确定网站是FTP还是HTTP?

时间:2018-11-30 07:14:25

标签: http ftp

http://ftp://可以在网络浏览器中访问公共网站opendata.dwd.de
当我使用curl -I http://opendata.dwd.de/时,响应标头为:

HTTP/1.1 200 OK Server: nginx/1.12.2 Date: Fri, 30 Nov 2018 06:59:06 GMT Content-Type: text/html Connection: keep-alive X-Frame-Options: SAMEORIGIN Strict-Transport-Security: max-age=31536000

HTTP响应标头不显示有关FTP的任何信息。

我猜它是FTP服务器,因此我使用curl ftp://opendata.dwd.de/访问服务器,响应是目录结构: -rw-rw-r-- 1 5521 15101 528 Jul 25 2017 README.txt drwxrwxr-x 2 5521 15101 4096 Jul 06 2017 climate drwxr-xr-x 4 5521 15101 12288 Nov 27 11:39 climate_environment drwxrwxr-x 3 5521 15101 4096 Sep 20 12:15 test drwxrwxr-x 13 5521 15101 4096 Nov 30 07:03 weather 但是响应头不包含任何内容。

另一个公共网站http://dd.meteo.ec.gc.ca/看起来像FTP服务器,但是我根本无法使用FTP来访问它。 我不知道它是否是FTP服务器。

使用Firefox开发者工具的“网络”选项卡会产生相同的结果。

1 个答案:

答案 0 :(得分:4)

  

但是响应头不包含任何内容。

FTP没有响应头。

  

如何确定网站是FTP还是HTTP?

HTTP和FTP是完全不同的协议,用于访问服务器提供的内容。 FTP通常用于访问静态资源(文件),而HTTP用于静态和动态创建的内容-但从理论上讲,如果一个人实现将按需生成内容的FTP服务器,则也可以使用FTP服务动态内容。

如果您可以使用http://https://访问资源,则显然是HTTP。如果您可以使用ftp://(或使用ftp之类的FTP客户端)进行访问,则显然是FTP。您也可以同时使用它,也可以使用sftp,rsync,SMB,...或其他协议来访问它。服务器也有可能同时提供HTTP和FTP访问,但在那里提供不同的资源。

HTTP和FTP本质上是通往同一房屋(服务器)的不同门。两扇门可能存在,可能不存在,也可能只有一个。两扇门可能通向同一房间或不同房间(提供相同或不同的内容)。而且两扇门都需要以不同的方式打开(不同的应用协议)。