서버 설정 · 2 min read · Oct 19, 2025
nginx 및 FastCGI로 HTML::Mason 실행하기
nginx 및 FastCGI로 HTML::Mason 실행하기
이 문서는 HTML::Mason 모듈을 nginx 웹 서버 및 FastCGI와 함께 사용하기 위해 설치하는 단계별 가이드입니다. Debian (lenny)에서 테스트되었지만, Ubuntu 및 기타 Debian 기반 배포판에서도 매우 유사할 것입니다.
최소 실행 서버 설치하기
먼저 nginx와 FastCGI로 최소 서버를 설치합니다. 작동시키기 위한 기본 스크립트를 만들었습니다. 나중에 이 스크립트를 사용자 정의할 수 있습니다.
nginx 설치하기
이제 nginx를 설치하고 작동시킵니다. 호스트에 다른 웹 서버가 없다고 가정합니다. 모든 것이 기본값으로 설치됩니다.
apt-get install nginx포트 80에 telnet으로 연결하여 작동하는지 확인해 봅시다.
/etc/init.d/nginx start
telnet locahost 80
Escape character is '^]'
GET /
nginx에 오신 것을 환영합니다!
... FastCGI 설치하기
apt-get install libcgi-fast-perl libio-all-perlHTML::Mason 설치하기
HTML::Mason은 apache2가 필요하다고 가정되므로, 이를 다운로드하고 설치합니다. 나중에 이를 제거할 것입니다.
apt-get install libhtml-mason-perl
apt-get --purge remove apache2-mpm-worker apache2-utils
apt-get --purge autoremove이제 HTML::Mason이 설치되고 apache 흔적이 없기를 바랍니다. 포트 80에서 여전히 응답하는지 확인하여 nginx가 작동하는지 확인하세요.
FastCGI 구성하기
HTML::Mason 코드를 실행할 수 있도록 FastCGI 서버가 실행 중이어야 합니다. 이 스크립트는 모든 구성 및 초기화 파일을 다운로드합니다. 루트로 실행해야 합니다. 실행하기 전에 살펴보세요. GitHub에서 일부 파일을 다운로드하고 복사합니다. 서버에 위험할 수 있습니다.
wget http://github.com/frankiejol/mason-fcgi/raw/master/download.sh
bash ./download.sh/etc/nginx/sites-available/mason의 server_name 옵션을 서버의 실제 이름으로 변경하는 것이 매우 중요합니다. localhost는 작동하지 않습니다. 그런 다음 /var/www/mason/mason_fcgi.pl의 %SITES 변수를 수정합니다.
Mason 코드 실행하기
마지막으로 간단한 Mason 페이지를 만들어 봅시다.
mkdir /var/www/site1
echo '<% 2 + 2 %>' > /var/www/site1/index.html그런 다음 서비스를 시작합시다. 브라우저로 사이트에 연결하면 4가 나타나야 합니다.
/etc/init.d/nginx restart
/etc/init.d/fcgi start서버 사용자 정의하기
현재 nginx+FastCGI로 구동되는 Mason 서버가 있습니다. 모든 구성 파일과 스크립트는 제 GitHub 저장소에서 찾을 수 있습니다.
nginx
nginx 구성은 /etc/nginx/sites-available/mason에 있습니다. 필요에 따라 위치를 수정할 수 있습니다. Mason이 디렉토리를 제대로 처리할 수 없기 때문에 두 개의 재작성 라인이 있다는 점에 유의하세요. 요청이 디렉토리처럼 보일 때 index.html 접미사가 추가됩니다.
FastCGI
FastCGI 시작 스크립트는 /var/www/mason/mason_fcgi.pl입니다. 여러 인수를 제공할 수 있습니다.
/var/www/mason/mason_fcgi.pl --help
mason_fcgi.pl [--help] [--pid=/var/run/fcgi/fcgi.pid] [--log=/var/log/nginx/fcgi/fcgi.log] [--debug] [--socket=/var/run/fcgi/mason_fcgi.sock] [--basedir=/var/www] [--workspace=/var/www/mason/workspace] [--error-uri=/errors/503.html] [--listen-queue=100] [--default-host=debian.localdomain]Perl 모듈 및 전역 변수를 로드하는 섹션이 있습니다. 기본 코드는 다음과 같습니다:
{
package HTML::Mason::Commands;
# use My::Own::Module;
# use Data::Dumper;
# 구성 요소에서 사용할 수 있는 모든 것
use vars(qw($DBH %stash));
}여러 FastCGI 사이트 실행하기
FastCGI 데몬은 /etc/init.d/fcgi에서 실행됩니다. 이 스크립트는 /etc/default/fcgi에서 구성을 로드합니다. 다른 사이트를 위한 더 많은 FastCGI 서버가 필요한 경우, init 스크립트를 다른 이름으로 복사하고 구성 파일도 동일하게 호출하면 됩니다. init 스크립트는 자신과 동일한 기본 이름을 가진 /etc/default의 파일을 로드합니다.
링크
- nginx
- HTML::Mason
- mason-fcgi 파일
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.