주간 베스트 월간 베스트 3개월 베스트 베스트 게시물
꽃배달 한국, 중국 전지역배송

CGI, GET, POST

네로 | 2003.02.24 03:44:00 댓글: 0 조회: 488 추천: 5
분류웹 프로그래밍 https://life.moyiza.kr/itstudy/1758913
▶ CGI, GET, POST

알아두면 유용한 정보입니다. 간략히 표현해봤습니다. 해당 항목에 대해 보다 자세히
알아보고 싶은 사람은 각종 검색 엔진 등을 이용해 찾아보세요. ^^;


▷ CGI(Common Gateway Interface)

CGI 프로그램이란 말 많이 들어보셨죠? 하지만 CGI는 프로그램이 아닙니다. 예전에
CGI 확장자의 프로그램은 PERL로 제작된 것이 대부분이었죠. 그래서 잘못 생각하고
있는 분들이 계신 것 같아요. CGI는 웹서버와 웹프로그램의 연결 역할을 합니다.

Interface라는 단어는 많이 보셨죠? 예를 들어볼까요? - 대표적인 UI(User
Interface)로는 셀 상태에서의 명령어 입력 형태인 CUI(Character User Interface)와
윈도우처럼 아이콘 등을 이용하는 GUI(Graphic User Interface)가 있다.

어렵게 생각하지 마세요. CGI는 프로그램이 아닙니다. 다른 프로그램(여기에서는
PHP, PERL, ASP, JSP, C 등으로 제작된 다른 웹 프로그램이겠죠?)을 연결해주는
매개체 역할만을 합니다. (정보 전달, 결과 전달 등)

이를 더욱 간단히 표현해 보면 다음과 같습니다.

▷ 일반 HTML의 경우
① 웹브라우저 --(자료 요청)--> 웹서버
② 웹브라우저 <--(자료 수신)-- 웹서버

▷ 웹 프로그램의 경우
① 웹브라우저 --(자료 요청)--> 웹서버
② 웹서버 --(CGI 호출)--> 웹프로그램
③ 웹서버 <--(CGI 결과반환)-- 웹프로그램
④ 웹브라우저 <--(자료 수신)-- 웹서버

CGI의 기본적인 환경 변수는 다음과 같습니다. 직접 찾아보도록 하세요. ^^;

AUTH_TYPE
CONTENT_LENGTH
CONTENT_TYPE
HTTP_ACCEPT
HTTP_ACCEPT_LANGUAGE
HTTP_REFERER
HTTP_USER_AGENT
PATH_INFO
PATH_TRANSLATED
QUERY_STRING
REMOTE_ADDR
REMOTE_HOST
REMOTE_IDENT
REMOTE_USER
REQUEST_METHOD
SCRIPT_NAME
SERVER_NAME
SERVER_PORT
SERVER_PROTOCOL
SERVER_SOFTWARE


▷ GET, POST

제로보드를 예로 들 경우 글쓰기 버튼을 눌렀을때 사용자가 입력해야 하는 정보로는
이름, 이메일 주소, 홈페이지 주소, 제목, 본문, 암호 등이 있습니다. 이 정보를
웹서버 측으로 보내는 방법이 크게 두가지로 구분됩니다. 바로 GET과 POST입니다.

http://nzeo.com/bbs/zboard.php?id=main_freeboard

위의 주소에서 ? 이후의 id=main_freeboard가 GET 방식의 정보 전달의 대표적인
예입니다. 이 경우 보낼 수 있는 정보의 양이 크게 제한됩니다. (최대 255 바이트)
여기서 id는 변수명, main_freeboard는 값입니다. 위의 CGI 환경 변수 중
QUERY_STRING에 그 값이 할당됩니다. 그리고 예에서 보듯 변수와 값을 모두가
볼 수 있다는 담점까지 가지고 있습니다.

http://nzeo.com/bbs/member_join.php?group_no=1
(※ 테스트삼아 가입하는 일이 없도록 합시다.)

위의 주소를 열어보면 회원가입폼이 나옵니다. 여기에 입력되는 정보는 POST
방식으로 전달되게 됩니다. 이 정보들은 GET 방식과 달리 주소 표시줄에 변수와
값이 보이지 않으며 많은 값을 보낼 수 있습니다. 보안을 필요로 하는 부분에
있어 이 POST 방식을 많이 이용합니다. (암호, 주민등록번호 등의 정보 전달)

다시 한번 간략히 결론을 내리자면 GET 방식은 주소 표시줄에 변수와 값 등 전달된
정보가 보이는 형태로 그 크기가 제한적이며, POST 방식은 전달된 정보가 보이지
않으며 그 크기에 거의 제한을 받지 않습니다.

* 전설님에 의해서 게시물 이동되었습니다 (2004-05-30 17:07)
* 이동한 이유 :
* 원래의 위치 : 웹 공부 >> 웹 프로그래밍
* 이동후 위치 : 웹 공부 >>

* 전설님에 의해서 게시물 이동되었습니다 (2004-05-30 17:12)
* 이동한 이유 :
* 원래의 위치 : 웹 공부 >>
* 이동후 위치 : 웹 공부 >> 웹 프로그래밍
추천 (5) 선물 (0명)
IP: ♡.27.♡.234
3,006 개의 글이 있습니다.
제목 글쓴이 날짜 조회
관리자
2003-09-20
11940
관리자
2003-09-20
11488
관리자
2003-09-20
20621
지구인
2010-08-27
19413
지구인
2009-09-07
13735
SOLIDH
2010-01-29
15692
엔죠라이프
2004-10-07
16784
네로
2003-02-24
756
네로
2003-02-24
523
네로
2003-02-24
546
네로
2003-02-24
593
네로
2003-02-24
464
네로
2003-02-24
579
네로
2003-02-24
504
네로
2003-02-24
488
네로
2003-02-24
474
네로
2003-02-24
596
네로
2003-02-24
614
네로
2003-02-24
479
네로
2003-02-24
636
네로
2003-02-24
507
네로
2003-02-24
462
네로
2003-02-24
1849
네로
2003-02-24
493
네로
2003-02-24
501
네로
2003-02-24
534
네로
2003-02-24
573
네로
2003-02-24
852
모이자 모바일