Icecast header 响应同时为 400 和 200
Icecast header response is both 400 and 200
我在 sub.domain.org 的 Windows 盒子上安装了 Icecast 2.4.4 运行ning。我的网站位于 domain.org 的另一台服务器上。
当我 SSH 进入我的 Linux 主机 shell 并且 运行 curl 到挂载点时,我得到了 400 的响应,但是如果我使用 wget,我得到了 200 的响应.怎么会这样?
# wget https://sub.domain.org/live.mp3
--2018-12-19 17:52:58-- https://sub.domain.org/live.mp3 Resolving sub.domain.org... 111.111.111.111 Connecting to
sub.domain.org|111.111.111.111|:443... connected. HTTP request sent,
awaiting **response... 200 OK** Length: unspecified [audio/mpeg] Saving
to: `live.mp3'
[ <=> ] 96,600 3.93K/s ^C
# curl --head https://sub.domain.org/live.mp3
HTTP/1.0 **400 Bad Request**
Server: Icecast 2.4.4
Connection: Close Date: Thu, 20 Dec 2018
00:53:32 GMT Content-Type: text/html; charset=utf-8 Cache-Control:
no-cache, no-store Expires: Mon, 26 Jul 1997 05:00:00 GMT Pragma:
no-cache Access-Control-Allow-Origin: *
因为在 cURL 的情况下,您要传递 --head
参数。这告诉 cURL 发出 HTTP HEAD
请求而不是 wget
执行的 HTTP GET
请求。
Icecast 不 支持 HTTP HEAD
请求,因此 HTTP 400
响应是完全合理的。
我在 sub.domain.org 的 Windows 盒子上安装了 Icecast 2.4.4 运行ning。我的网站位于 domain.org 的另一台服务器上。
当我 SSH 进入我的 Linux 主机 shell 并且 运行 curl 到挂载点时,我得到了 400 的响应,但是如果我使用 wget,我得到了 200 的响应.怎么会这样?
# wget https://sub.domain.org/live.mp3
--2018-12-19 17:52:58-- https://sub.domain.org/live.mp3 Resolving sub.domain.org... 111.111.111.111 Connecting to
sub.domain.org|111.111.111.111|:443... connected. HTTP request sent,
awaiting **response... 200 OK** Length: unspecified [audio/mpeg] Saving
to: `live.mp3'
[ <=> ] 96,600 3.93K/s ^C
# curl --head https://sub.domain.org/live.mp3
HTTP/1.0 **400 Bad Request**
Server: Icecast 2.4.4
Connection: Close Date: Thu, 20 Dec 2018
00:53:32 GMT Content-Type: text/html; charset=utf-8 Cache-Control:
no-cache, no-store Expires: Mon, 26 Jul 1997 05:00:00 GMT Pragma:
no-cache Access-Control-Allow-Origin: *
因为在 cURL 的情况下,您要传递 --head
参数。这告诉 cURL 发出 HTTP HEAD
请求而不是 wget
执行的 HTTP GET
请求。
Icecast 不 支持 HTTP HEAD
请求,因此 HTTP 400
响应是完全合理的。