# fastcgi 는 cgi 프로그램을 실행되고 있는 상태로 유지하고 tcp/ip 로 통신할 수 있다.
# fastcgi 다운로드, 빌드, 설치
wget http://www.fastcgi.com/dist/fcgi.tar.gz
tar zxvf fcgi.tar.gz
cd fcgi-2.4.1-SNAP-0311112127/
./configure
make
# make EOF 에러가 발생한다.
# vi ./libfcgi/fcgio.cpp
# #include <stdio.h> 를 추가해주자.
# 다시 make
sudo make install
# 라이브러리가 설치된 경로를 추가
sudo vi /etc/ld.so.conf
/usr/local/lib
# ldconfig 적용
sudo /sbin/ldconfig
# fastcgitest 프로그램 작성
#include <stdio.h>
#include <stdlib.h>
#include "fcgi_stdio.h"
int main()
{
while (FCGI_Accept() >= 0)
{
printf("Content-type: text/html\r\n"
"\r\n"
"<h1>fastcgi test</h1>"
"\r\n");
}
return 0;
}
# 빌드
g++ fastcgitest.c -lfcgi++ -lfcgi -o fastcgitest
# fastcgi 를 실행시키 위한 spawn-fcgi 다운로드,빌드,설치
http://www.lighttpd.net/download/spawn-fcgi-1.6.3.tar.gz
tar zxvf spawn-fcgi-1.6.3.tar.gz
cd spawn-fcgi-1.6.3
./configure
make
sudo make install
# fastcgi 를 9000 포트로 실행
sudo /usr/local/bin/spawn-fcgi -p 9000 fastcgitest
# nginx .conf 수정
location /ysoftmancgi {
# cgi 를 처리할 주소 명시
fastcgi_pass 127.0.0.1:9000;
}
# nginx 재시작
sudo /etc/init.d/nginx restart