개요 CGI는 Common Gateway Interface의 약자로, Nginx와 같은 웹 서버가 프로그램을 동적으로 실행하고 동적 콘텐츠를 생성할 수 있도록 하는 표준 프로토콜이다. 주로 사용자의 요청을 처리하기 위해 사용된다. 실행되는 프로그램은 주로 스크립트 언어로 작성된다. 스크립트 언어(scripting lan...
개요 std::exception을 상속받아서 예외 클래스를 작성하는 경우 예외 문자열을 받기 위해 what() 함수를 다음과 같이 정의한다. const char* what() const throw(); 또한 예외를 발생시키기 위해서는 다음과 같이 exception 클래스의 객체를 생성하여 throw한다. throw MyException(); ...
메소드의 종류 GET HEAD PUT POST TRACE OPTIONS DELETE 메소드별 의미 GET 서버에서 데이터를 가져오기 위해 사용되는 메소드 요청을 보내면 서버가 응답 본문에 요청받은 데이터를 담아서 리턴한다. HEAD 개념 GET 메소드를 통해 특정 리소스를 요청...
책 “HTTP 완벽 가이드”를 읽고 정리한 글입니다. 이전 글에서는 프록시의 개념과 종류에 대해 다루었다. 이번 글에서는 해당 개념에 대해 조금 더 세부적으로 다룰 것이다. 프록시(Proxy) 프록시 서버는 클라이언트를 대신하여 트랜잭션을 수행한다. 프록시는 아래 그림과 같이 클라이언트와 서버 사이에서 HTTP 요청, 응답 메시지를 적절...
책 “HTTP 완벽 가이드”를 읽고 정리한 글입니다. 웹 서버란? 웹 서버는 HTTP(또는 HTTPS)를 사용하여 웹 페이지(또는 파일)를 웹 브라우저에 전달하는 소프트웨어 프로그램이다. 하드웨어적인 측면에서 웹 서버는 파일을 저장하고 소프트웨어를 동작시키는 컴퓨터를 일컫기도 한다. 웹 서버의 형태 웹 서버는 다음의 형태로 사용할 수...
책 “HTTP 완벽 가이드”를 읽고 정리한 글입니다. TCP 커넥션 모든 HTTP 통신은 TCP/IP를 통해 이루어진다. 이렇게 이루어진 TCP/IP 커넥션 덕에 메시지들이 손실되지 않고 올바른 순서로 목적지에 도달할 수 있다. 예시 다음 URL을 브라우저에 입력하여 목록을 가져온다고 하자. http://2...
책 “HTTP 완벽 가이드”를 읽고 정리한 글입니다. 메시지의 흐름 HTTP 메시지는 HTTP 애플리케이션 사이를 이동하는 데이터 블럭이다. 메시지는 클라이언트, 서버, 프록시 사이를 오간다. 메시지는 원 서버를 인바운드로 송신된다 메시지는 원(original) 서버를 인바운드로 송신됐다가, 처리가 끝나면 사용자에게 (아웃바운드로) ...
책 “HTTP 완벽 가이드”를 읽고 정리한 글입니다. 모든 것에는 표준화 된 이름이 있다. 책의 ISBN 번호, 버스의 노선 번호, 은행 계좌의 계좌 번호 처럼 말이다. 이러한 표준 덕에 한 사람이 특정 대상을 지칭할 때, 다른 사람들도 그 사람이 무엇을 가리키는 것인지를 알 수 있다. 마찬가지로 URL(Uniform Resource Loc...
책 “HTTP 완벽 가이드”를 읽고 정리한 글입니다. HTTP 오늘날 수많은 데이터가 인터넷 상에서 이동한다. 이 과정에서 HTTP(Hypertext Transfer Protocol)는 웹서버에서 사용자의 브라우저로 데이터를 옮겨준다. HTTP는 신뢰성 있는 데이터 전송(reliable data-transmission) 프로토콜을 사용하는데...
개요 Undefined behavior, unspecified behavior, implementation-defined behavior는 C/C++ 언어에서 프로그램이 특정 상황에 어떻게 동작해야하는지를 나타내는 용어이다. Undefined behavior 개념 언어 명세가 프로그램의 동작을 명시하지 않은 상황을 가리킨다. 프로그램의...
A new version of content is available.