webserv

    CGI 스크립트의 환경변수

    참고 1: 위키백과 - CGI 참고 2: IBM Documentation CGI 란? 공용 게이트웨이 인터페이스(Common Gateway Interface; CGI)는 웹 서버 상에서 사용자 프로그램을 동작시키기 위해, 데이터를 주고받는 방식 또는 규약입니다. 우리는 동적인 웹 서버를 구현하기 위해, 서버에서 외부 프로그램을 불러내고 그 처리 결과를 클라이언트에 송신합니다. CGI 스크립트의 환경 변수 CGI를 실행할 때 서버와 브라우저는 각자의 환경변수를 교환하며, 이는 대부분 서버에서 전달된 요청에 대한 데이터를 나타냅니다. 우리가 구현할 CGI에서는 다음과 같은 환경변수를 설정하여 전달합니다. 변수 설명 디폴트 AUTH_TYPE 인증 방법(BASIC, SSL 등). null (인증되지 않음) CO..

    HTTP 헤더에 따른 콘텐츠 협상 (Content negotiation)

    참고: MDN - Content negotiation 1. 콘텐츠 협상이란? 클라이언트가 URL로 특정 리소스(문서)를 요청하면, 서버는 콘텐츠 협상(Content negotiation)을 통해 가장 적절한 프레젠테이션(리소스 버전)을 제공합니다. 예를 들어, 영미권에서는 영어로 된, 한국에서는 한글로 된 프레젠테이션을 볼 수 있도록, 적절한 리소스 버전을 골라내는 것도 콘텐츠 협상에 해당합니다. 콘텐츠 협상에는 여러 방법이 있으나, 여기서는 클라이언트 Request의 HTTP 헤더에 따른 방법만 살펴보겠습니다. 2. HTTP Request 헤더에 따른 콘텐츠 협상 헤더 헤더 설명 Accept 클라이언트가 처리하고자 하는 미디어 리소스 타입(MIME 타입) Accept-Charset 클라이언트가 이해할 ..