::: 온라인메뉴얼 (Linux 이용자) >> CGI 프로그래밍 가이드 (Perl,PHP,Python)
처음시작하기
SiteControl 사용하기
SiteMail 사용하기
디렉토리 안내
홈페이지 올리기
이메일 사용하기
보안서버, 보안텔넷
CGI스크립트 사용하기
Database 사용하기
RealAudio / Video /
       채팅방 사용하기
웹사이트 관리하기
네임서버 변경법
호스팅 사용 가능시간
CGI 프로그래밍 가이드
Linux 사용하기

 

 

 

CGI 프로그래밍 가이드 (Perl,PHP,Python)



    CGI 프로그래밍


    CGI(Common Gateway Interface)는 동적으로 웹페이지를 만들어주는 프로그램이라 할 수 있는데 웹 브라우저로부터 받은 사용자 입력을 바탕으로 웹페이지를 동적으로 생성해 줍니다. 자세히 말씀드리면 웹 브라우저에서 CGI프로그램의 실행을 요청하면 웹서버는 이를 받아서 CGI프로그램으로 요청을 넘기게 되고 그러면 CGI프로그램이 실행되어 결과로 HTML페이지가 만들어지는데 웹서버는 이를 받아서 앞에다 HTTP헤더를 붙여 웹 브라우저로 보내게 되는 겁니다.

    이렇게 CGI를 이용해 웹페이지를 동적으로 구성하게 되면 웹사이트를 보다 체계적으로 더 쉽게 관리할 수 있고 그래서 이런 웹서버 프로그램밍이란 바로 CGI프로그램을 만드는 것을 말하고 이런 CGI프로그램은 웹서버에서 지정한 형식을 맞출 수만 있다면 어떤 언어로든지 작성 할 수 있습니다. 물론 호스트웨이에서는 각종 Applincation 개발에 모든 언어(C++, gcc, java)를 지원하지만 특히 Perl, PHP, Python 에 대한 간략한 소개와 주요 사이트를 소개하며 참고가 되셨으면 합니다.

    Perl


    Perl은 수년간 존재해온 가장 좋은 유틸리티 언어입니다. 래리 웰(Larry Wall)에 의해 만들어진 언어는 Pratical Extraction and Report Language의 약자입니다. Perl은 이름에서 알 수 있듯이 원래 테이터를 처리하고 이를 통해 보고서를 작성하기 위해 만들어졌습니다. 인터프리터 스크립트 언어(interpreter script language)이므로 컴파일된 이전 실행 파일이 필요없습니다. 단, Perl 스크립트를 해석하기 위한 Perl 인터프리터가 웹서버에 존재해야 합니다. (eg. /usr/bin/perl) 원래 유닉스에서 사용하도록 설계된 것이지만 지금은 아미가(Amiga), MS도스, OS/2워프, VMS, 윈도우NT, 윈도우95/98, 그리고 매킨도시에서도 사용할 수 있습니다. 무료로 제공될 뿐만 아니라 배우기 쉽고 플랫폼간의 이식성이 뛰어납니다.

    * 추천 사이트 : http://happycgi.com

    PHP


    PHP 만큼 쉽고 빠르게 웹 서버를 구축할 수 있는 언어도 드물 겁니다. 기존의 C나 Perl로 어렵게 CGI프로그램을 하던 것들을 PHP는 너무도 쉽게 해결해 줍니다. 쉬운 DB연결, 빠른 실행속도, 멀티 플랫폼 지원등의 장점을 가진 웹 언어 PHP. 한마디로 말하면 서버에서 해석되는 스크립트언어입니다. MS사의 ASP와 같은 겁니다. 이런 서버용 언어는 C나 Perl등으로 만들었던 CGI 프로그램과 마찬가지로 서버에서 해석되고 그 결과만을 HTML형태로 만들어서 클라이언트로 보내주기 때문에 웹 브라우저는 내부 소스 코드를 볼 수가 없습니다. 이것은 보안 상으로 상당히 중요한 장점이라 할 수 있습니다. 호스트웨이에서는 php관련 소스는 .php3 혹은 php로 작성하셔서 확인 해 보실 수 있습니다. [예제보기]

    * 추천 사이트 : http://phpschool.com

    PHP에서는 DB연결이 쉽습니다. 어떠한 초보자라 할지라도 쉽게 DB에 연결해서 테이터 관리를 할 수 있도록 인터페이스가 깔끔합니다. 실제 지원하는 DB는 Oracle, Sybase, mSQL, MySql, Solid, ODBC, PostgreSQL, Adabas D, FilePro, Velocis, Infomix, dBase, Unix dbm등 거의 모든 DB가 포함되어 있습니다. 또한 PHP는 유닉스와 윈도우 환경에서 동작하는 대부분의 웹서버를 지원합니다. 유닉스 환경에서는 아파치 웹 서버에 모듈 형식으로 붙을 수 있고 CGI처럼 동작할 수도 있습니다.


    Python


    국내에 아직은 많이 알려져 있지 않은 파이썬은 1990년 암스텔담에서 귀도 반 로썸(Guido van Rossum)이 개발한 객체 지향 스크립트 언어입니다. 파이썬은 초보자나 프로그램 개발자, 모두 에게 적합한 흔하지 않은 언어중 하나입니다. 초보자에게는 쉬워서 좋고, 전문가에게는 원하는 소프트웨어의 개발 기간을 단축시켜 줍니다. 이런 파이썬은 접착제 언어(glue language)라고도 하는데 다른 언어(C, Java, Fortran)와 잘 결합하여, 기존에 구축된 작업환경을 그대로 활용할 수 있습니다. C인 경우 SWIG와 같은 좋은 툴이 있어서 소스를 수정하지 않고도 파이썬 확장 모듈로 만들 수 있습니다.

    파이썬의 특징을 간단하게 정리하면 아래와 같이 다양합니다.
    단순한 구문 / 동적 형결정 / 내장된 고수준 객체 자료형 (list, tuple, dictionary등) 지원 / 다양한 표준 라이브러리 지원 / 다양한 써드파티 유틸리티 지원(대부분 무료) / 메모리 자동관리 / 대형 프로그램을 관리하기 쉬운 모듈 구조

    * 추천사이트 : http://www.python.or.kr:8080/python