だから私は興味があります。 Linuxのコマンドラインで誤ったHTTPSリクエストを送信して、サーバーから「エラー400」ページを受け取ることができますか?
「telnet」を使用してポート80のサーバーに接続し、無効なHTTP要求を入力するように指示して、無効なHTTP要求を生成できます(HTTP / 1.1をサポートしているがホストヘッダーを提供しないと主張する)。
しかし、HTTPSでも同じことができますか?私が知っている限り、 "wget"は常に構文的に有効なHTTPまたはHTTPS要求を生成する必要があるため、 "wget"を介してこれを行うことはできません。 SSHプロトコルはHTTPSとは異なるため、「ssh」を介してこれを行うことはできず、「400不正な要求」ではなく「接続リセット」エラーで拒否されます。それでは、これを行う方法はありますか?
ベストアンサー1
これを使用してcurl
HTTP(S)要求を送信できます。
カスタムヘッダーを削除または保持するには、-H
このオプションを使用できます。
空のヘッダーを送信するには、次のようにします。
curl URL -H 'Host:'
例:
$ curl https://fedoramagazine.org/ -H 'Host:'
<html>
<head><title>400 Bad Request</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx</center>
</body>
</html>
応答ヘッダーのみを取得する:
$ curl -s -o /dev/null -D - https://www.imdb.com/ -H 'Host:'
HTTP/2 400
server: CloudFront
date: Fri, 24 Apr 2020 15:52:42 GMT
content-type: text/html
content-length: 915
x-cache: Error from cloudfront