상세 컨텐츠

본문 제목

HTTP & HTTPS의 기초 와 hyper text

네트워크

by 해공학(해킹을 공부하는 학생) 2023. 5. 2. 07:10

본문

우선 HTTP의 약자부터 알아보겠습니다.

HTTP는 hypertext transfer protocol의 약자로 우리말로 쉽게 풀어 쓰면 

"하이퍼 텍스트를 옮기는 규칙" 이라고 설명할수있습니다.

이쪽에서 하이퍼 텍스트를 잠깐 설명 하겠습니다. 


hyper text 란?

하이퍼 텍스를 설명할려면 하이퍼 링크를 알아야 합니다.

하이퍼 링크는 우리가 흔히 보는 글씨에 파란색 선이 있는것을 하이퍼 링크라 합니다.

https://www.computerhope.com/jargon/h/hyperlink.png

이렇게 파란색 밑줄이 있는 링크를"hyper link" 라고 합니다.

그럼 이제 다시 하이퍼 텍스트로 돌아와서, 하이퍼 텍스는 무엇일까요?

하이퍼 텍스트는 한 웹페이지에서 다른 웹페이지로 이동하게하는 링크라고 설명할수있습니다.

다른 말로는 하이퍼 링크를 씨울수있는 글자 라고 설명할수도 있습니다.


HTTP & HTTPS

http는 위에서 말했던것 처럼 "하이퍼 텍스트를 옮기는 규칙" 이라 할수있습니다.

https는 http보다 더 안전하다는것을 의미합니다 

동작방식은 client 가 sever 에게 html,사진등을 요청(request)하고 sever가 응답(response) 하는것이다

https://joshua1988.github.io/images/posts/web/http/request-response.png

 

이쪽에서 Client와 Sever 개념을 좀 살펴보겠습니다. Client는 말그대로 "고객"이고,

Sever는 이 사이트가 잘 작동되게 하는 컴퓨터 입니다.

 

이제 http 요청 메서드를 알아보겠습니다.

우선 method 가 무엇일까요? method 는 자바스크립트,자바등 프로그래밍 언어에서 함수를 의미합니다

자 그럼 다시 http 요청 메서드를 알오보면 크게 4가지로 나눌 수있습니다.

HTTP 요청 메서드

GET : 존재하는 것에 대한 받기위한 요청이다.

POST : 새로운 것을 생성하는것 이다.

PUT : 존재하는것을 변경하는것이다.

DELETE :존재하는것을 삭제하는것 이다.

 

요청 메서드 예시

---- GET은 큰 예로 들어 우리가 URL을 치고 들어갈때

만약 http://www.tistory.com 이라 라 치고 들어갔다면 우리는 서버에게 GET을 날려 존재하는것을 받은것이다.

---- POST도 하나로 예를 들어보겠습니다.

우리가 블로그를 작성하고 완료 버튼을 눌러서 이 블로그를 게시 했을때 저희는 POST를 한것입니다.

---- PUT의 예도 알아보겠습니다.

우리가 블로그를 썼는데 고치고 싶은 부분이 있으면 고치는데 다시 저장하는것을 우리는 PUT 이라한다.

---- DELETE 도 예를 들어보겠습니다.

우리가 블로그가 너무 너무 맘에 안들어서 삭제할때 그것을 DELETE라고 한다.

 

HTTP 상태코드

http 상태코드는 지금 까지 모든게 Client(고객)이 server(서버)에게 요청(request)했던거라면

지금 부터는 Sever가 응답(Response) 해주는것이다.

한번 간단한 예시를 들어보겠습니다. 

우리가 아까 GET의 예시를 배웠는데, 그 GET의 예시를 이용하여 한번 해보겠습니다.

http://www.naver.com

이것을 우리가 요청하면 서버는 크게 200 아니면 400으로 대답해줄것입니다. 이 200,400이 http 상태코드 입니다.

http 상태코드의 종류를 몇가지 알아보겠습니다.

 

성공

  • 200 : GET 요청에 대한 성공
  • 204 : No Content. 성공했으나 응답 본문에 데이터가 없음
  • 205 : Reset Content. 성공했으나 클라이언트의 화면을 새로 고침하도록 권고
  • 206 : Partial Conent. 성공했으나 일부 범위의 데이터만 반환

실패

  • 400 : Bad Request, 잘못된 요청
  • 401 : Unauthorized, 권한 없이 요청. Authorization 헤더가 잘못된 경우
  • 403 : Forbidden, 서버에서 해당 자원에 대해 접근 금지
  • 404 : Not find, 요청 받을것을 서버에서 찾을수없다.
  • 405 : Method Not Allowed, 허용되지 않은 요청 메서드
  • 409 : Conflict, 최신 자원이 아닌데 업데이트하는 경우. ex) 파일 업로드 시 버전 충돌

이제 응답을 코드 구조를 알아보겠습니다.

생활코딩님 유튜브

이런식으로 첫번째 줄에는 요청 메서드,URL,프로토콜 버전이 있는걸 "Request line(응답 줄)"이라합니다.

그리고 그밑에는 "응답 헤더" 가있는데 그거랑 응답줄을 같이 부르는 말을 "응답 메시지 헤더" 라고 불릅니다.

다음으로는 한줄뛰고 "응답 메시지 바디"가 있습니다.

 

정리

http는 hyper text protocol의 약자이고, hyper text는 하이퍼 링크를 나타낼수있는 글자이며

https는 hyper text protocol secret의 약자이다.

http 요청 메서드는 GET(존재하는 자원을 요청),POST(만드는것),PUT,(수정),DELETE(삭제)등 이 있다.

http 상태 메시지는 서버가 해주는 응답으로, 200,400등 같은걸로 말해준다.

 

참고

 

https://developer.mozilla.org/ko/docs/Web/HTTP

 

 

 

 

관련글 더보기