HTTP请求-永久移动了吗?

时间:2019-12-12 15:52:15

标签: http ssl command-line telnet

我正在尝试将有关HTTP的一些理论研究付诸实践。因此,我尝试制作一个HEAD(也尝试使用GET,但由于我对实际对象感兴趣,所以更喜欢HEAD),它如下:

~$ telnet youtube.com 80
Trying 216.58.211.110...
Connected to youtube.com.
Escape character is '^]'.
HEAD /watch?v=GJvGf_ifiKw HTTP/1.1
Host: youtube.com

HTTP/1.1 301 Moved Permanently
Content-Length: 0
Location: https://youtube.com/watch?v=GJvGf_ifiKw
Date: Thu, 12 Dec 2019 15:48:41 GMT
Content-Type: text/html
Server: YouTube Frontend Proxy
X-XSS-Protection: 0

如您所见,我正在请求位于youtube.com主机上/ watch?v = GJvGf_ifiKw的对象,该对象必须加到youtube.com/watch?v=GJvGf_ifiKw,这是该位置的网址标头字段。这里发生了什么?为什么说它已经移到了相同的位置?

1 个答案:

答案 0 :(得分:3)

如果仔细查看输出,您会发现您已重定向到HTTPS,因为第一步是在80端口(即HTTP端口)上的telnet

任何系统管理员都会这样做,如果请求来自HTTPS,则会强制重定向到HTTP