본문 바로가기
C++ 200제/코딩 IT 정보

HTML 웹 코딩, CGI 프로그래밍 방법 (서버 프로그램 기초 구조 이론)

by vicddory 2017. 1. 27.

HTML 웹 코딩, CGI 프로그래밍 방법 (서버 프로그램 기초 구조 이론)


HTML 코딩을 위한 CGI (Common Gateway Interface)


- 웹 서버와 외부 프로그램 간의 연결에 대한 규약

- 상호 작용 지원

  : 요청 시점에 따라 다른 html 문서를 제공


- C/C++, Perl, shell program 등을 이용하여 작성


기본 동작 (HTML 코딩 기초)


HTML 프로그래밍 CGI[HTML 웹 코딩, CGI 프로그래밍 방법 (서버 프로그램 기초 구조 이론)]


Form 태그


- HTML에서 사용자의 입력, 선택을 위한 태그

- text, button, check box 등의 일반적인 GUI 포함

Form 태그의 값 전달 방식 (METHOD, HTML 코딩 기초)

- 사용자의 입력을 인코딩하여 전달함


- GET

  : 입력 값을 URL에 포함해 전달


- POST

  : 입력 값을 표준 입력을 통해 전달

  : 입력 값의 길이에 관계없이 전달 가능


기본구조


1
2
3
4
5
6
7
8
<FORM> form의 시작
    <INPUT> 여러 가지 방법 중 하나의 정보를 질의
    <INPUT> 원하는 만큼 사용
</FORM>
 
<FORM method="..." action="...">
    ...
</FORM>
cs


HTML 웹 코딩, CGI 프로그래밍 방법[HTML 웹 코딩, CGI 프로그래밍 방법 (서버 프로그램 기초 구조 이론)]


action

- 서버가 입력된 데이터를 받아서 처리할 CGI 프로그램 이름


HTML 코딩을 위한 WWW (World Wide Web)

- HTTP 프로토콜을 이용하여 html 문서를 전달

- Web Server : apache, IIS 등

- Web Browser : Internet Explorer, Netscape, Mozilla Firefox


HTTP (Hyper Text Transfer Protocol)

- HTML 문서의 전달을 정의한 프로토콜


HTML (Hyper Text Markup Language)

- Web에서 사용될 하이퍼 텍스트 문서를 만들기 위한 언어

- html tag를 기반으로 원하는 정보를 표현


HTML 코딩 기초 - 웹의 특징

: 일방적인 정보의 전달

: 사용자와의 상호 작용을 지원할 수 없음


기본 동작


HTML 코딩 프로그램 CGI[HTML 웹 코딩, CGI 프로그래밍 방법 (서버 프로그램 기초 구조 이론)]


CGI 환경변수


- 웹서버와 CGI 프로그램을 연결하기 위해 운영체제의 환경을 정의한 변수


- 주요 환경 변수들

  : QUERY_STRING - GET 전달 방식에서 질의 문자열이 저장될 환경변수

  : SERVER_PORT - 웹서비스를 수행하는 port 번호

  : CONTENT_LENGTH - POST로 전달되는 질의 문자열의 총 바이트 수

  : REQUEST_METHOD - 요청 방법, GET 혹은 POST

  : CONTENT_TYPE - CGI 프로그램에 전달되는 데이터의 인코딩 방식


- getenv() 함수를 사용하여 리눅스에서 정의된 환경변수 값 추출

  : GET 메소드인 경우 환경 변수 QUERY_STRING의 값으로부터 데이터를 추출


1
2
char *str;
str = getenv("QUERY_STRING");
cs


HTML 웹 코딩, CGI 프로그래밍 방법 (서버 프로그램 기초 구조 이론)

댓글