텔넷을 사용하여 웹사이트 제목 가져오기

텔넷을 사용하여 웹사이트 제목 가져오기

질문이 있습니다. 텔넷을 사용하여 웹사이트 제목을 얻을 수 있습니까? 웹사이트는 다음과 같습니다 domain.name.server.com/~USER(단순한 예). 텔넷을 통해 헤더를 얻고 싶습니다.

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 대신 사용할 수 있는 경우 다음 명령 하나로 모든 헤더를 얻을 수 있습니다.

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

관련 정보