HTTP 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
1번째 줄: 1번째 줄:
== 메시지 포맷 ==
 
[https://ko.wikipedia.org/wiki/HTTP#메시지_포맷 https://ko.wikipedia.org/wiki/HTTP#메시지 포맷]
 
 
=== 요청 메시지 ===
 
요청 내용과 헤더는 <CR><LF>로 끝나야 한다.
 
 
==== 요청 내용 ====
 
GET /images/logo.gif HTTP/1.1
 
 
===== 메서드 =====
 
https://developer.mozilla.org/ko/docs/Web/HTTP/Methods
 
 
====== HEAD ======
 
<code>HEAD</code> 메서드는 <code>GET</code> 메서드의 요청과 동일한 응답을 요구하지만, 응답 본문을 포함하지 않습니다.
 
 
====== PUT ======
 
목적 리소스 모든 현재 표시를 요청 payload로 바꿉니다.
 
 
====== CONNECT ======
 
목적 리소스로 식별되는 서버로의 터널을 맺습니다.
 
 
====== OPTIONS ======
 
목적 리소스의 통신을 설정하는 데 쓰입니다.
 
 
목적 리소스에서 지원되는 옵션을 보여주라는 뜻??
 
 
====== TRACE ======
 
목적 리소스의 경로를 따라 메시지 loop-back 테스트를 합니다.
 
 
====== PATCH ======
 
리소스의 부분만을 수정하는 데 쓰입니다.
 
 
==== 헤더 ====
 
Accept-Language: en
 
{| class="wikitable"
 
|+요약표
 
!HTTP 메서드
 
!RFC
 
!요청에 BODY가 있나?
 
!응답에 BODY가 있나?
 
!안전
 
!Idempotent
 
!캐시 가능?
 
|-
 
|GET
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|HEAD
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|POST
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|PUT
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|DELETE
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|CONNECT
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|OPTIONS
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|TRACE
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|PATCH
 
|
 
|
 
|
 
|
 
|
 
|
 
|}
 
 
=== 응답 메시지 ===
 
 
==== 상태표시 ====
 
status code+reason message
 
 
''HTTP/1.1 200 OK''.
 
 
==== 응답 헤더 ====
 
''Content-Type: text/html''
 
 
 
== 헤더 ==
 
== 헤더 ==
출처: https://developer.mozilla.org/ko/docs/Web/HTTP/Headers
 
 
=== Accept-Language ===
 
어떤 언어를 클라이언트가 이해할 수 있는지, 그리고 지역 설정 중 어떤 것이 더 선호되는지를 알려줍니다.
 
  
 
=== Host ===
 
=== Host ===
146번째 줄: 15번째 줄:
  
 
클라이언트(ex. 브라우저)와 프록시 또는 로드 밸런서에 접속하는데 사용했던 프로토콜(http, https)을 설정한다.
 
클라이언트(ex. 브라우저)와 프록시 또는 로드 밸런서에 접속하는데 사용했던 프로토콜(http, https)을 설정한다.
 
nginx의 경우에는 [[Nginx#proxy set header|proxy_set_header]]로 설정한다.
 
  
 
=== X-Forwarded-For (XFF) ===
 
=== X-Forwarded-For (XFF) ===
 
HTTP 프록시나 로드 밸런서를 통해 웹 서버에 접속하는 클라이언트의 원 IP 주소를 식별하는 사실상의 표준 헤더다. 클라이언트와 서버 중간에서 트래픽이 프록시나 로드 밸런서를 거치면, 서버 접근 로그에는 프록시나 로드 밸런서의 IP 주소만을 담고 있다. 클라이언트의 원 IP 주소를 보기위해 X-Forwarded-For 요청 헤더가 사용된다.
 
HTTP 프록시나 로드 밸런서를 통해 웹 서버에 접속하는 클라이언트의 원 IP 주소를 식별하는 사실상의 표준 헤더다. 클라이언트와 서버 중간에서 트래픽이 프록시나 로드 밸런서를 거치면, 서버 접근 로그에는 프록시나 로드 밸런서의 IP 주소만을 담고 있다. 클라이언트의 원 IP 주소를 보기위해 X-Forwarded-For 요청 헤더가 사용된다.
 
  X-Forwarded-For: [아이피주소]
 
  X-Forwarded-For: [아이피주소]
 
=== X-Forwarded-Host (XFH) ===
 
HTTP 요청 헤더에서 클라이언트가 요청한 원래 <code>Host</code> 헤더를 식별하는 사실상의 표준 헤더입니다.
 
  
 
=== X-Real-IP ===
 
=== X-Real-IP ===
 
X-Forwarded-For와 동일하다. mdn에 올라오지 않을 걸로 봐서는 사실상 표준도 아닌 것으로 보인다.
 
X-Forwarded-For와 동일하다. mdn에 올라오지 않을 걸로 봐서는 사실상 표준도 아닌 것으로 보인다.
  
=== ETag ===
+
출처: https://developer.mozilla.org/ko/docs/Web/HTTP/Headers
ETag HTTP 응답 헤더는 특정 버전의 리소스를 식별하는 식별자입니다.
 
 
 
ETag = "ETag" ":" entity-tag
 
 
 
Examples:
 
 
 
ETag: "xyzzy"
 
 
 
ETag: W/"xyzzy"
 
 
 
ETag: ""
 
  
 
== 보안 ==
 
== 보안 ==

wwiki에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 Wwiki:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 편집 도움말 (새 창에서 열림)