1. Content-Type
응답 본문의 미디어 타입을 나타냅니다.
Content-Type: text/html; charset=UTF-8
: HTML 문서이며 UTF-8 인코딩을 사용합니다.Content-Type: application/json
: JSON 데이터입니다.Content-Type: image/jpeg
: JPEG 이미지입니다.- 기타 미디어 타입:
application/xml
,application/pdf
,audio/mpeg
,video/mp4
등.
2. Content-Length
응답 본문의 크기(바이트)를 나타냅니다.
Content-Length: 1234
: 응답 본문의 크기가 1234바이트임을 나타냅니다.
3. Content-Encoding
응답 본문에 적용된 압축 알고리즘을 나타냅니다.
Content-Encoding: gzip
: 응답 본문이 gzip 압축되었음을 나타냅니다.Content-Encoding: deflate
: 응답 본문이 deflate 압축되었음을 나타냅니다.Content-Encoding: br
: 응답 본문이 Brotli 압축되었음을 나타냅니다.
4. Cache-Control
캐시 제어 메커니즘을 설정합니다.
Cache-Control: max-age=3600
: 응답이 생성된 후 3600초(1시간) 동안 캐시될 수 있음을 나타냅니다.Cache-Control: no-cache
: 캐시된 버전을 사용하기 전에 서버에 재검증해야 함을 나타냅니다.Cache-Control: no-store
: 응답을 캐시에 저장하지 않아야 함을 나타냅니다.Cache-Control: public
: 응답이 공개 캐시에 저장될 수 있음을 나타냅니다.Cache-Control: private
: 응답이 개인 캐시에만 저장되어야 함을 나타냅니다.
5. Expires
응답 본문의 만료 날짜와 시간을 나타냅니다.
Expires: Wed, 12 Feb 2020 12:00:00 GMT
: 응답이 2020년 2월 12일 12:00:00 GMT에 만료됨을 나타냅니다.
6. Last-Modified
응답 본문이 마지막으로 수정된 날짜와 시간을 나타냅니다.
Last-Modified: Wed, 12 Feb 2020 12:00:00 GMT
: 응답 본문이 2020년 2월 12일 12:00:00 GMT에 마지막으로 수정되었음을 나타냅니다.
7. ETag
응답 본문의 특정 버전을 식별하는 고유한 토큰입니다.
ETag: "abc123"
: 응답 본문의 현재 버전을 식별하는 토큰입니다.
8. Set-Cookie
클라이언트에 설정될 쿠키를 지정합니다.
Set-Cookie: session_id=abc123; Expires=Wed, 12 Feb 2020 12:00:00 GMT; Path=/; HttpOnly; Secure
session_id=abc123
: 쿠키의 이름과 값을 설정합니다.Expires=Wed, 12 Feb 2020 12:00:00 GMT
: 쿠키의 만료 날짜와 시간을 설정합니다.Path=/
: 쿠키가 적용될 경로를 설정합니다.HttpOnly
: 쿠키가 JavaScript에서 접근할 수 없도록 설정합니다.Secure
: 쿠키가 HTTPS 연결에서만 전송되도록 설정합니다.
Set-Cookie: user_preference=dark_mode; Max-Age=31536000; Path=/
user_preference=dark_mode
: 쿠키의 이름과 값을 설정합니다.Max-Age=31536000
: 쿠키의 유효 기간을 초 단위로 설정합니다 (1년).
9. Access-Control-Allow-Origin
교차 출처 리소스 공유(CORS)를 허용할 도메인을 지정합니다.
Access-Control-Allow-Origin: *
: 모든 도메인에서의 요청을 허용합니다.Access-Control-Allow-Origin: https://example.com
: 특정 도메인(https://example.com)에서의 요청을 허용합니다.
10. Access-Control-Allow-Methods
CORS에서 허용되는 HTTP 메서드를 지정합니다.
Access-Control-Allow-Methods: GET, POST, PUT, DELETE
: 지정된 HTTP 메서드(GET, POST, PUT, DELETE)를 허용합니다.
11. Access-Control-Allow-Headers
CORS에서 허용되는 HTTP 헤더를 지정합니다.
Access-Control-Allow-Headers: Content-Type, Authorization
: 지정된 HTTP 헤더(Content-Type, Authorization)를 허용합니다.
12. Location
리다이렉션 응답(3xx 상태 코드)에서 클라이언트가 리디렉션되어야 할 URL을 지정합니다.
Location: https://example.com/new-page
: 클라이언트를 지정된 URL(https://example.com/new-page)로 리디렉션합니다.
13. Server
웹 서버의 소프트웨어 정보를 나타냅니다.
Server: Apache/2.4.41 (Ubuntu)
: Apache 웹 서버 버전 2.4.41이 Ubuntu에서 실행 중임을 나타냅니다.Server: nginx/1.18.0
: Nginx 웹 서버 버전 1.18.0이 실행 중임을 나타냅니다.
14. Date
응답이 생성된 날짜와 시간을 나타냅니다.
Date: Wed, 12 Feb 2020 12:00:00 GMT
: 응답이 2020년 2월 12일 12:00:00 GMT에 생성되었음을 나타냅니다.
15. Strict-Transport-Security
HTTPS를 통해서만 리소스에 접근해야 함을 나타냅니다.
Strict-Transport-Security: max-age=31536000; includeSubDomains
max-age=31536000
: HTTPS를 통해서만 리소스에 접근해야 하는 기간을 초 단위로 설정합니다 (1년).includeSubDomains
: 모든 하위 도메인에도 이 정책을 적용합니다.
16. X-Frame-Options
클릭재킹 공격을 방지하기 위해 프레임 내에서 페이지 렌더링을 제어합니다.
X-Frame-Options: DENY
: 페이지가 어떤 프레임 내에서도 렌더링되지 않아야 함을 나타냅니다.X-Frame-Options: SAMEORIGIN
: 페이지가 동일한 출처의 프레임 내에서만 렌더링되어야 함을 나타냅니다.
17. X-Content-Type-Options
MIME 스니핑을 방지하고 선언된 Content-Type을 신뢰하도록 지정합니다.
X-Content-Type-Options: nosniff
: 브라우저가 선언된 Content-Type을 신뢰하고 MIME 스니핑을 시도하지 않아야 함을 나타냅니다.
18. X-XSS-Protection
브라우저의 내장 XSS 필터를 활성화하도록 지정합니다.
X-XSS-Protection: 1; mode=block
: XSS 공격이 감지되면 페이지 렌더링을 차단합니다.
19. Referrer-Policy
Referer 헤더에 포함되어야 할 정보를 제어합니다.
Referrer-Policy: no-referrer
: Referer 헤더를 포함하지 않습니다.Referrer-Policy: origin
: 도메인 정보만 포함합니다.Referrer-Policy: strict-origin-when-cross-origin
: 동일한 출처로의 요청에는 전체 URL을, 교차 출처 요청에는 도메인 정보만 포함합니다.
20. Content-Security-Policy
페이지에 대한 콘텐츠 보안 정책을 지정합니다.
Content-Security-Policy: default-src 'self'; script-src 'self' https://example.com; style-src 'self' 'unsafe-inline'
default-src 'self'
: 기본적으로 모든 리소스를 동일한 출처에서만 로드합니다.script-src 'self' https://example.com
: 스크립트는 동일한 출처와 https://example.com에서만 로드합니다.style-src 'self' 'unsafe-inline'
: 스타일시트는 동일한 출처에서 로드하고 인라인 스타일을 허용합니다.
21. Content-Disposition
응답 본문의 표시 방식을 제어합니다.
Content-Disposition: inline
: 응답 본문을 웹 페이지에 인라인으로 표시합니다.Content-Disposition: attachment
: 응답 본문을 다운로드할 파일로 취급합니다.Content-Disposition: attachment; filename="example.txt"
: 응답 본문을 지정된 파일 이름("example.txt")으로 다운로드합니다.Content-Disposition: attachment; filename*=UTF-8''%EC%98%88%EC%A0%9C.txt
: 파일 이름에 URL 인코딩을 사용하여 유니코드 문자를 포함할 수 있습니다.
'개념노트' 카테고리의 다른 글
안드로이드 (컴포넌트 아키텍처) (0) | 2024.12.29 |
---|---|
안드로이드 (기본구조) (0) | 2024.12.29 |
GraphQL (0) | 2024.12.29 |
역방향 프록시(Reverse Proxy) (1) | 2024.12.15 |
Web (0) | 2024.12.15 |