GoAhead Web Server
15.1 Web Server GoAhead 이해 관련 홈페이지 http://www.GoAhead.com 단일 Task 작업을 수행한다. 일반적인 다른 Web Server는 매 연결마다 fork()를 이용하여 새로운 task를 형성한다. GoAhead는 CGI(Common Gateway Interface), 자동 디렉토리 관리, 자동 파일 gunzip 등을 위해서만 fork()를 수행한다. 빠르고 단순하다. 타겟은 서버를 돌리고 Web Browser는 타겟에 접속해서 서비스를 받게 된다.
15.1 Web Server GoAhead 이해
15.2 GoAhead 설치하기 Source 구하기 Makefile과 컴파일 http://www.goahead.com 터미널에서 # wget http://data.goahead.com/Software/Webserver/2.1.8/webs218.tar.gz Makefile과 컴파일 #tar xvzf webs218.tar.gz #cd ws031202
15.2 GoAhead 설치하기 Makefile과 컴파일 가장 마지막 줄의 cc -c -o $@ $(DEBUG) $(CFLAGS) $(IFLAGS) $<를 $(CC) -c -o $@ $(DEBUG) $(CFLAGS) $(IFLAGS) $<로 변경한다.
15.2 GoAhead 설치하기 Makefile과 컴파일 Makefile 수정이 끝났으면 make 명령으로 컴파일하고 컴파일 후 생성된 webs를 타겟보드에 다운로드 받는다.
15.3 GoAhead web server 실행하기 타겟보드 환경 설정 실행하기 전에 ifconfig를 했을 때으 ip와 /etc/hosts의 ip가 같은지 확인 한다. 그리고 hostname이 같은지도 확인한다. (만약에 틀리다면 수정해 준다.)
15.3 GoAhead web server 실행하기 타겟보드 web server download 타깃보드에서 다음과 같은 명령어로 webs을 다운로드 받고 실행권한을 준다.
15.3 GoAhead web server 실행하기 타겟보드 web server 서비스 파일 download 서버 테스트를 위해 예제 웹페이지를 갖고 있는 GoAhead로 이동한다. 소스에 보면 web이라는 디렉토리가 있다. 이 디렉토리는 asp와 html, cgi스트할 수 있는 코드가 들어있는데 이를 묶어서 타겟보드의 /디렉토리(최상위)로 다운로드 해서 풀어 놓는다. <host PC>
15.3 GoAhead web server 실행하기 타겟보드 web server 서비스 파일 download web.tar.gz을 /디렉토리에서 압축을 풀면 ./web이라는 디렉토리가 생긴다.
15.3 GoAhead web server 실행하기 웹서버가 정상적으로 동작하는지 웹브라우저를 통해 접속해보자.
15.4 CGI를 이용한 웹 프로그래밍 CGI(Common Gateway Interface)는 HTTP와 같은 웹 서버와 외부 응용 프로그램과 인터페이스를 위한 표준이다. 기존의 http text는 정적인 파일 형태로 존재하지만, CGI 프로그램 은 실시간 실행 중인 출력 text정보를 동적으로 변경 시킬 수 있다. CGI를 실행 시키는 사용자는 이 실행 파일을 강제로 실행 시키는 권한을 금지한다. CGI 실행 파일들은 cgi-bin이라는 특정한 디렉토리에서 관리된다.
15.5 CGI 프로그램이 가능한 언어들 C/C++, Fortran, PERL, TCL, Any Unix Shell, Visual Basic,AppleScript 웹 클라이언트/서버간의 CGI를 이용한 데이터 흐름 CGI를 이용하여 넘겨주는 문서 형태 문서 전체를 text로 다른 문서의 위치를 참조할 수 있도록 <a href=" ... "> Fill-out Form을 이용한 CGI 사용자와 registration, order, query 등의 인터페이스를 추가 여러 개의 Form field를 가질 수 있다. Form은 보통 CGI와 연계되어 작동된다. <form action="url" method=get>
15.6 C를 이용한 CGI Html 문서 작성 CGI 작성 CGI로 디바이스 제작