웹서버의 이해
http(hypertext transfer protocol)프로토콜을 기반으로 웹 페이지에 해당하는 파일을 클라이너트에게 전송하는 역할의 서버
HTTP 요청/응답 과정
HTTP 요청 헤더
요청방식
1. GET = 데이터를 요청하는 경우
2. POST = 데이터를 전송하는 경우
GET /index.html HTTP/1.1의 의미 =
index.html 파일을 요청(GET)합니다 그리고 저는 HTTP프로토콜 버전 1.1을 기준으로 통신하기를 원합니다
메세지 헤더에는 응답 받을 브라우저 정보, 사용자 인증정보 등 HTTP메세지에 대한 부가적인 정보가 담김
HTTP 응답 헤더
HTTP/1.1 200 OK의 의미 =
나는 HTTP 프로토콜 버전 1.1을 기준으로 응답하겠다. 또한 너의 요청은 성공적으로 처리되었다(200 OK)
클라이언트의 요청에 대한 결과정보를 담고 있는 숫자(상태코드)
200 OK 요청이 성공적으로 처리되었다
400 Not Found 요청한 파일이 존재하지 않는다
400 Bad Request 요청방식이 잘못되었으니 확인해봐라
메세지 헤더에 담긴 정보
서버의 이름은 SimpleWebServer이고, 전송하는 데이터의 타입은 text/html(html로 이뤄진 텍스트 데이터)이다 그리고 데이터의 길이는 2048 바이트를 넘지 않는다
멀티쓰레드 웹서버 구현에 사용되는 표준입출력함수 및 문자열 처리 함수
strcpy
strcmp
sprintf
fopen
fgets
fputs
strlen
strstr
strtok
recv
send