Telnetを使用してWebサイトのタイトルを取得する

Telnetを使用してWebサイトのタイトルを取得する

質問があります。 Telnetを使用してウェブサイトのタイトルを取得できますか?ウェブサイトは次のとおりですdomain.name.server.com/~USER(単純な例)。 Telnet経由でヘッダーを取得したいです。

telnet domain.name.server.com/~USER 80<--動作しません

telnet domain.name.server.com 80うまくいきますが、~userをインポートする必要があります。これは可能ですか?

答え1

telnet domain.name.server.com 80その後、使用

HEAD /~USER HTTP/1.1
Host: domain.name.server.com

(それからもう一度打たなければなりませんEnter。)

これでページタイトルが表示されます。

実際の例は次のとおりです。

$ telnet unix.stackexchange.com 80                 
Trying 198.252.206.16...
Connected to unix.stackexchange.com.
Escape character is '^]'.
HEAD /questions/237635/using-telnet-to-get-website-header HTTP/1.1
Host: unix.stackexchange.com

HTTP/1.1 200 OK
Cache-Control: public, no-cache="Set-Cookie", max-age=60
Content-Length: 70679
Content-Type: text/html; charset=utf-8
Expires: Wed, 21 Oct 2015 19:27:43 GMT
Last-Modified: Wed, 21 Oct 2015 19:26:43 GMT
Vary: *
X-Frame-Options: SAMEORIGIN
X-Request-Guid: dbf9d0f6-0ca4-423f-98f0-4cdf2bf51bf1
Set-Cookie: prov=08886524-c640-40ad-a0ee-246db3219228; domain=.stackexchange.com; expires=Fri, 01-Jan-2055 00:00:00 GMT; path=/; HttpOnly
Date: Wed, 21 Oct 2015 19:26:43 GMT

Connection closed by foreign host.

答え2

wgetTelnetの代わりに使用できる場合は、次の1つのコマンドですべてのヘッダーを取得できます。

wget -q -S -O - domain.name.server.com/~USER | : 2>&1
  • -q一般ログメッセージングをオフにする
  • -Sサーバーでヘッダーロギングをオンにする
  • -O -ダウンロードしたファイルの内容をSTDOUTに渡す
  • | :ダウンロードしたファイルの内容をランダムユーティリティにパイプします:。これにより、ファイル全体がダウンロードされるのを効果的に防ぐことができ、ファイルが大きい場合に有利になります。
  • 2>&1(オプション)記録されたヘッダーをSTDOUTにリダイレクトする

たとえば、

$ wget -q -S -O - unix.stackexchange.com/questions/237635/using-telnet-to-get-website-header | :
  HTTP/1.1 200 OK
  Cache-Control: public, no-cache="Set-Cookie", max-age=49
  Content-Type: text/html; charset=utf-8
  Expires: Wed, 21 Oct 2015 21:22:21 GMT
  Last-Modified: Wed, 21 Oct 2015 21:21:21 GMT
  Vary: *
  X-Frame-Options: SAMEORIGIN
  X-Request-Guid: 5ac03697-68fa-4be5-9f32-2905ec3eff38
  Set-Cookie: prov=5d9866f4-9d98-4587-a7cc-f6ea5cd76075; domain=.stackexchange.com; expires=Fri, 01-Jan-2055 00:00:00 GMT; path=/; HttpOnly
  Date: Wed, 21 Oct 2015 21:21:32 GMT
  Content-Length: 76585
$ 

答え3

CurlはHTTPヘッダーを見るためのきちんとした方法でもあります。

curl -v http://unix.stackexchange.com/questions/237635/using-telnet-to-get-website-header

答え4

Telnetの代わりにopensslを使用してhttpsを介してこれを行うこともできます。例がありますこのチュートリアル私が最近投稿したもの:

openssl s_client -connect domain.name.server.com:443
HEAD /~USER HTTP/1.0
Host: domain.name.server

関連情報