Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 1115727 of HTTP

  • 리비전 슬러그: Web/HTTP
  • 리비전 제목: HTTP
  • 리비전 아이디: 1115727
  • 제작일시:
  • 만든이: devcken
  • 현재 리비전인가요? 아니오
  • 댓글

리비전 내용

{{ HTTPSidebar }}

하이퍼텍스트 트랜스퍼 프로토콜(HTTP)는 HTML과 같은, 하이퍼미디어 문서 전송을 위한 애플리케이션-계층 프로토콜입니다. HTTP는 웹 브라우저와 웹 서버 사이의 통신을 위해 디자인되었지만 다른 목적을 위해서도 사용될 수 있습니다. 이 프로토콜은 연결을 열고, 요청을 일으키며 응답을 받을 때까지 대기하는 클라이언트를 이용하는 클래식한 클라이언트-서버 모델을 따릅니다. 또한  상태없는 프로토콜로, 두 개의 요청 사이에 어떤 데이터(상태)도 서버가 유지하지 않는다는 것을 의미합니다. 대게는 TCP/IP 계층에 기반하지만, 신뢰할 수 있는, 즉 메시지 손실없는 어떠한 전송 계층에서도 사용될 수 있는 프로토콜입니다.

튜토리얼

HTTP 사용법을 가이드와 튜토리얼로 배워보세요.

HTTP 개요
클라이언트-서버 프로토콜의 기초 기능에 대해 알아봅니다: 그것을 가지고 무엇을 할 수 있는지 그리고 의도된 사용법은 무엇인지
HTTP의 진화
초기 버전부터 현대의 HTTP/2 그리고 그 이상까지, HTTP에서 일어났던 변화에 대한 간략한 설명
HTTP 메시지
HTTP/1.x 그리고 HTTP/2 메시지의 서로 다른 종류의 타입과 구조에 대해 설명합니다.
전형적인 HTTP 세션
보통의 HTTP 세션의 흐름을 보여주고 설명합니다.
HTTP/1.x에서의 연결 관리
HTTP/1.x에서 사용 가능한 세 가지 연결 관리 모델의 강점과 약점에 관해 설명합니다.
HTTP 캐시
캐싱은 올바른 성능의 웹 사이트를 위한 중요한 도구입니다. 이 글은 캐시의 서로 다른 종류를 제시하고 그것들을 구성하고 제어하기 위해 HTTP 헤더을 사용하는 방법에 대해 설명합니다.
HTTP 쿠키
쿠키가 동작하는 방식은 RFC 6265에 정의되어 있습니다. HTTP 요청 수신 시, 서버는 응답과 함께 Set-Cookie 헤더를 전송할 수 있습니다. 그 후에, 클라이언트는 Cookie HTTP 헤더의 형식 내에서 동일한 서버에 대한 모든 요청을 이용해 쿠키 값을 반환하게 됩니다. 추가적으로,  파기 지연을 지정할 수 있습니다. 또한 쿠키는 특정 도메인과 경로에 한정될 수도 있습니다.
HTTP 접근 제어 (CORS)
크로스-사이트 HTTP 요청은 요청을 일으키는 리소스의 도메인이 아닌 다른 도메인의 리소스에 대한 HTTP 요청을 말합니다. 예를 들자면, 도메인 A (https://domaina.example/)로부터 로드되는 리소스, 말하자면 HTML 웹 페이지가 img 엘리먼트 (https://domainb.foo/image.jpg)를 사용해 도메인 B (https://domainb.foo/)에 있는 이미지 리소스에 대한 요청이 바로 그렇습니다. 오늘 날의 웹에서 이런 일은 매우 흔한 일입니다 — 페이지들이 CSS 스타일, 이미지 그리고 스크립트와 다른 리소스들을 포함하여, 크로스-사이트 측면에서 많은 리소스들을 로드하는 것 말이죠.
DNS 프리페치 제어하기
파이어폭스 그리고 대부분의 다른 모던 브라우저들은 DNS 프리페치를 수행합니다. 이것은 사용자가 따라가기로 결정한 링크 그리고 이미지, CSS 그리고 자바스크립트와 같이 문서에 의해 참조되는 리소스에 대한 도메인 이름 분석을 사전에 실행하는 시점을 말합니다. 이 프리페치는 백그라운드에서 수행되어서 DNS 룩업이 참조된 아이템 요청 시점에 이미 분석될 가능성이 높습니다. 이것은 예를 들어 사용자가 링크를 클릭하는 시점에  레이턴시를 줄여줍니다.

레퍼런스

상세한 HTTP 레퍼런스 문서를 살펴보시기 바랍니다.

HTTP 헤더
HTTP 메시지 헤더는 서버 혹은 클라이언트의 리소스 혹은 동작을 정확하게 설명하는 용도로 사용됩니다. 'X-' 접두사를 사용해 커스텀 헤더를 추가할 수도 있습니다; 그 외의 헤더들이 IANA 레지스트리에 나와 있는데, 실제 내용은 RFC 4229에서 정의되었습니다. IANA는 새롭게 제안된 HTTP 메시지 헤더의 레지스트리도 관리하고 있습니다.
HTTP 요청 메서드
HTTP({{HTTPMethod("GET")}}, {{HTTPMethod("POST")}})로 실행될 수 있는 서로 다른 동작을 말하지만, {{HTTPMethod("OPTIONS")}}, {{HTTPMethod("DELETE")}} 혹은 {{HTTPMethod("TRACE")}}와 같은 일반적이지는 않은 요청들도 있습니다.
HTTP 상태 응답 코드
HTTP 응답 코드는 특정 HTTP 요청이 성공적으로 완료되었는지를 가리킵니다. 응답은 다섯 가지 계층 내에서 그룹화됩니다: 정보가 있는 응답, 성공적인 응답, 리디렉션, 클라이언트 오류 그리고 서버 오류.

도구와 리소스

당신의 HTTP 연결을 사용하고 디버깅하기 위한 유용한 도구들

파이어폭스 개발자 도구
네트워크 모니터
레드봇
당신의 캐시와 관련된 헤더를 체크하기 위한 도구

리비전 소스

<div>{{ HTTPSidebar }}</div>

<p class="summary"><strong><dfn>하이퍼텍스트 트랜스퍼 프로토콜(HTTP)는 HTML과 같은, 하이퍼미디어 문서 전송을 위한 </dfn></strong><a class="external" href="https://en.wikipedia.org/wiki/Application_Layer">애플리케이션-계층</a><strong><dfn>&nbsp;프로토콜입니다. HTTP는 웹 브라우저와 웹 서버 사이의 통신을 위해 디자인되었지만&nbsp;다른 목적을 위해서도 사용될 수 있습니다.</dfn></strong>&nbsp;이 프로토콜은 연결을 열고, 요청을 일으키며 응답을 받을 때까지 대기하는 클라이언트를 이용하는&nbsp;클래식한&nbsp;<a class="external" href="https://en.wikipedia.org/wiki/Client%E2%80%93server_model">클라이언트-서버 모델</a>을 따릅니다. 또한&nbsp;&nbsp;<a class="external" href="https://en.wikipedia.org/wiki/Stateless_protocol">상태없는 프로토콜</a>로, 두 개의 요청 사이에 어떤 데이터(상태)도 서버가 유지하지 않는다는 것을 의미합니다. 대게는 TCP/IP 계층에 기반하지만, 신뢰할 수 있는, 즉 메시지 손실없는&nbsp;어떠한&nbsp;<a class="external" href="https://en.wikipedia.org/wiki/Transport_Layer">전송 계층</a>에서도 사용될 수 있는 프로토콜입니다.</p>

<div class="column-container">
<div class="column-half">
<h2 id="Tutorials">튜토리얼</h2>

<p>HTTP 사용법을 가이드와 튜토리얼로 배워보세요.</p>

<dl>
 <dt><a href="/en-US/docs/Web/HTTP/Overview">HTTP 개요</a></dt>
 <dd>클라이언트-서버 프로토콜의 기초 기능에 대해 알아봅니다: 그것을 가지고 무엇을 할 수 있는지 그리고 의도된 사용법은 무엇인지</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP">HTTP의 진화</a></dt>
 <dd>초기 버전부터 현대의 HTTP/2 그리고 그 이상까지, HTTP에서 일어났던 변화에 대한 간략한 설명</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Messages">HTTP 메시지</a></dt>
 <dd>HTTP/1.x 그리고 HTTP/2 메시지의 서로 다른 종류의 타입과 구조에 대해 설명합니다.</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Session">전형적인 HTTP 세션</a></dt>
 <dd>보통의 HTTP 세션의 흐름을 보여주고 설명합니다.</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Connection_management_in_HTTP_1.x">HTTP/1.x에서의 연결 관리</a></dt>
 <dd>HTTP/1.x에서 사용 가능한 세 가지 연결 관리 모델의 강점과 약점에 관해 설명합니다.</dd>
 <dt><a href="/en-US/docs/Mozilla/HTTP_cache">HTTP 캐시</a></dt>
 <dd>캐싱은 올바른 성능의 웹 사이트를 위한 중요한 도구입니다. 이 글은 캐시의 서로 다른 종류를 제시하고 그것들을 구성하고 제어하기 위해 HTTP 헤더을 사용하는 방법에 대해 설명합니다.</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Cookies">HTTP 쿠키</a></dt>
 <dd>쿠키가 동작하는 방식은&nbsp;<a class="external" href="https://tools.ietf.org/html/rfc6265">RFC 6265</a>에 정의되어 있습니다. HTTP 요청 수신 시, 서버는 응답과 함께&nbsp;<code>Set-Cookie</code>&nbsp;헤더를 전송할 수 있습니다.&nbsp;그 후에, 클라이언트는&nbsp;<code>Cookie</code> HTTP 헤더의 형식 내에서 동일한 서버에 대한 모든 요청을 이용해&nbsp;쿠키 값을 반환하게 됩니다. 추가적으로,&nbsp;&nbsp;파기 지연을 지정할 수 있습니다. 또한 쿠키는 특정 도메인과 경로에 한정될 수도 있습니다.</dd>
 <dt><a href="/en-US/docs/HTTP/Access_control_CORS">HTTP 접근 제어&nbsp;(CORS)</a></dt>
 <dd><strong>크로스-사이트 HTTP 요청</strong>은 요청을 일으키는 리소스의 도메인이 아닌 <strong>다른 도메인</strong>의 리소스에 대한 HTTP 요청을 말합니다. 예를 들자면, 도메인&nbsp;A (<code>https://domaina.example/</code>)로부터 로드되는 리소스, 말하자면 HTML 웹 페이지가&nbsp;<code>img</code> 엘리먼트&nbsp;(<code>https://domainb.foo/image.jpg</code>)를 사용해 도메인&nbsp;B (https://domainb.foo/)에 있는 이미지 리소스에 대한 요청이 바로 그렇습니다. 오늘 날의 웹에서 이런 일은 매우 흔한 일입니다&nbsp;— 페이지들이&nbsp;CSS 스타일, 이미지 그리고 스크립트와 다른 리소스들을 포함하여, 크로스-사이트 측면에서 많은 리소스들을 로드하는 것 말이죠.</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Controlling_DNS_prefetching">DNS 프리페치 제어하기</a></dt>
 <dd>파이어폭스 그리고 대부분의 다른 모던 브라우저들은 <strong>DNS 프리페치</strong>를 수행합니다. 이것은 사용자가 따라가기로 결정한 링크 그리고 이미지, CSS 그리고 자바스크립트와 같이 문서에 의해 참조되는 리소스에 대한 도메인 이름 분석을 사전에 실행하는 시점을 말합니다.&nbsp;이 프리페치는 백그라운드에서 수행되어서 DNS 룩업이 참조된 아이템 요청 시점에 이미 분석될 가능성이 높습니다. 이것은 예를 들어 사용자가 링크를 클릭하는 시점에&nbsp;&nbsp;레이턴시를 줄여줍니다.</dd>
</dl>
</div>

<div class="column-half">
<h2 id="Reference">레퍼런스</h2>

<p>상세한&nbsp;HTTP 레퍼런스 문서를&nbsp;살펴보시기 바랍니다.</p>

<dl>
 <dt><a href="/en-US/docs/Web/HTTP/Headers">HTTP 헤더</a></dt>
 <dd>HTTP 메시지 헤더는 서버 혹은 클라이언트의 리소스 혹은 동작을 정확하게 설명하는 용도로 사용됩니다. 'X-' 접두사를 사용해 커스텀 헤더를 추가할 수도 있습니다; 그 외의&nbsp;헤더들이&nbsp;<a class="external" href="https://www.iana.org/assignments/message-headers/perm-headers.html">IANA 레지스트리</a>에 나와&nbsp;있는데, 실제 내용은 <a class="external" href="https://tools.ietf.org/html/rfc4229">RFC 4229</a>에서 정의되었습니다.&nbsp;IANA는 <a class="external" href="https://www.iana.org/assignments/message-headers/prov-headers.html">새롭게 제안된 HTTP 메시지 헤더의 레지스트리</a>도 관리하고 있습니다.</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Methods">HTTP 요청 메서드</a></dt>
 <dd>HTTP({{HTTPMethod("GET")}}, {{HTTPMethod("POST")}})로 실행될 수 있는 서로 다른 동작을 말하지만,&nbsp;{{HTTPMethod("OPTIONS")}}, {{HTTPMethod("DELETE")}} 혹은&nbsp;{{HTTPMethod("TRACE")}}와 같은 일반적이지는 않은 요청들도 있습니다.</dd>
 <dt><a href="/en-US/docs/Web/HTTP/Response_codes">HTTP 상태 응답 코드</a></dt>
 <dd>HTTP 응답 코드는 특정 HTTP 요청이 성공적으로 완료되었는지를 가리킵니다. 응답은 다섯 가지 계층 내에서 그룹화됩니다: 정보가 있는 응답, 성공적인 응답, 리디렉션, 클라이언트 오류 그리고 서버 오류.</dd>
</dl>

<h2 id="Tools_resources">도구와&nbsp;리소스</h2>

<p>당신의 HTTP 연결을 사용하고 디버깅하기 위한 유용한 도구들</p>

<dl>
 <dt><a href="/en-US/docs/Tools">파이어폭스 개발자 도구</a></dt>
 <dd><a href="/en-US/docs/Tools/Network_Monitor">네트워크 모니터</a></dd>
 <dt><a href="https://redbot.org/">레드봇</a></dt>
 <dd>당신의&nbsp;캐시와 관련된 헤더를 체크하기 위한 도구</dd>
</dl>
</div>
</div>
현재 리비전 복원