2025/05/05 2

에코 서버(1) - 호스트와 서비스 변환

에코 서버는 클라이언트가 표준 입력으로 받은 데이터를 서버가 받아서 그대로 돌려주면 클라이언트가 받은 데이터를 표준 출력하는 간단한 프로그램이다. CSAPP 책에서는 CGI 프로그램을 이해하기 전에 에코 서버를 구현해본다. 소켓 인터페이스 기반 응용프로그램은 위와 같은 절차를 거쳐 통신한다. 이번 포스팅에서는 getaddrinfo() 함수가 어떻게 연결 가능한 소켓 주소 리스트들을 반환하는지 알아보자.그리고 그 리스트를 해석하는 getnameinfo(), 메모리 누수를 방지하기 위해 리스트를 반환할 때 쓰이는 freeaddrinfo()도 함께 알아보자. 호스트와 서비스 변환1. getaddrinfo()도메인 주소, 포트번호를 받아 연결 가능한 소켓 주소 정보를 연결 리스트로 제공하는 함수함수 인자host..

정글 2025.05.05

CGI

CGI란?웹 서버와 외부 프로그램이 통신할 때 사용되는 표준 인터페이스사용자의 요청이 동적인 처리를 필요로 할 때 웹 서버가 외부 프로그램을 실행시킨 후 그 결과를 응답으로 보내야 하는데, 이 때 웹 서버가 외부 프로그램과 상호작용할 때 지켜야 할 규약 혹은 인터페이스CGI는 초기 웹 개발에서 매우 중요한 역할을 했지만, 현대의 웹 개발에서는 더 효율적이고 강력한 기술들로 대체되고 있음 (Node.js, Django같은 현대 프레임워크)프로그램의 출력 결과를 HTML로 포장해서 브라우저에게 전달나는 CGI를 어느정도 정리하고 글을 쓰는 중이라서 위 내용이 어떤 말인지 이해가 되는데, 처음 보는 사람들은 이해하기 어려울 것이라고 생각한다. 그래서 CGI가 등장하게 된 배경을 먼저 설명하자면 다음과 같다. ..

정글 2025.05.05