HTTP
- HyperText Transfer Protocol, 하이퍼텍스트 전송 프로토콜이라고 합니다.
- 월드와이드 웹 (WWW)의 토대이며, 하이퍼텍스트 링크를 사용해 웹 페이지를 로드합니다.
- 응용계층 프로토콜로, 네트워크 프로토콜 스택의 다른 계층 위에서 실행됩니다.
- http 요청(request)과 http 응답(response)으로 구성됩니다.
- 80 포트를 사용합니다.
HTTP 요청 구성
1. HTTP 버전 유형
2. URL
3. HTTP 메서드
- 크게 GET과 POST의 값으로, 서버에 요청하는 작업의 종류를 의미합니다.
4. HTTP 요청 헤더
- 카값 쌍에 저장된 텍스트 정보입니다.
- 클라이언트가 사용하는 브라우저 정보 및 요청하는 데이터와 같은 핵심 정보입니다.

5. HTTP 본문(선택사항)
- 정보의 본문으로, 사용자 이름이나 비밀번호등의 웹 서버에 제출하는 모든 정보를 의미합니다.
HTTP 응답 구성
1. HTTP 상태 코드
- HTTP 요청이 성공적으로 완료되었는지 여부를 나타냅니다.
- 1XX는 정보, 2XX는 성공, 3XX는 리디렉션, 4XX는 클라이언트 오류, 5XX는 서버 오류입니다.
- 예를 들어 코드 200 OK와, 404 Not found, 403 Forbidden이 존재합니다.
2. HTTP 응답 헤더
- 응답 본문에서 전송되는 데이터의 언어 및 형식 등의 정보를 포함합니다.

3. HTTP 본문(선택사항)
- 일반적으로 요청된 정보가 포함된 본문이 존재합니다.
- 대부분 웹 브라우저에서 페이지로 변환되는 HTML 데이터입니다.
HTTPS?
- HyperText Transfer Protocol "Secure", 하이퍼텍스트 전송 프로토콜 보안 이라 합니다.
- 기본 프로토콜인 HTTP의 보안 버전으로, 암호화 프로토콜을 사용하여 통신을 암호화합니다.
- URL 표시줄에서 https 사용 여부를 확인할 수 있습니다.
- 일부 브라우저에서는 https가 아닌 모든 웹 사이트는 안전하지 않은 것으로 표시됩니다.

- 443 포트를 사용합니다.
HTTPS와 HTTP의 차이
- HTTPS와 HTTP는 방식이 동일하지만, HTTPS에서 몇가지 과정이 추가됩니다.
1. 암호화
- 공개키와 SSL/TLS 통신을 통한 암호화를 수행합니다.
- 혹시 스니핑 등의 경로상공격을 당하더라도 정보 유출을 방지할 수 있습니다.
2. 인증서 확인
- 공개키에 포함된 SSL/TLS 인증서의 디지털 서명을 확인합니다.
- 이를 통해 정보가 위조되었는지 확인하여 무결성을 확보할 수 있습니다.
HTTPS 설정하기
1. 도메인 받기
- 도메인을 구매하여 도메인 주소를 확보합니다.
2. 웹 사이트에 SSL 또는 TLS 인증서를 설치합니다.
- 웹 호스트 업체에서 제공받거나 인증기관에서 직접 설치할 수 있습니다.
- SSL/TLS 인증서는 정기적으로 갱신해야 할 수 있습니다.
3. 등록받은 인증서를 서버에 등록합니다.
- 생성한 웹 서버에 인증서를 등록합니다.
- 등록이 성공하면 https의 기본포트인 443 포트로도 접속이 가능해집니다.
4. http 포트에 https 리다이렉션 설정을 합니다.
- http의 기본포트는 80포트고, https의 기본포트는 443 포트입니다.
- 80포트로 접속해도 443포트로 redirect 되게 설정합니다.
'기타' 카테고리의 다른 글
RESTful API (0) | 2024.06.03 |
---|---|
[제로베이스] JavaScript 과제를 수행하면서 (0) | 2024.05.24 |
[제로베이스] 한달 동안 프론트엔드 스쿨을 수행하면서 (0) | 2024.03.31 |
제로베이스 프론트엔드 스쿨 - HTML/CSS프로젝트를 수행하면서 (0) | 2024.03.29 |
내가 생각하는 프론트엔드 개발과 백엔드 개발의 차이점 (0) | 2024.03.13 |