서버 설정 · 2 min read · Feb 06, 2026

Nginx와 PHP 5.3 및 PHP-FPM을 Ubuntu Lucid Lynx (10.04)에 컴파일 없이 설치하기

Nginx와 PHP 5.3 및 PHP-FPM을 Ubuntu Lucid Lynx (10.04)에 컴파일 없이 설치하기

버전 1.0
트위터에서 나를 팔로우하세요

Apache는 대부분의 경우 메모리를 많이 사용하는 프로세스이기 때문에 사람들은 웹사이트를 호스팅하는 다양한 방법을 찾기 시작했습니다. Apache는 분명히 사용 가능한 유일한 웹 서버가 아닙니다. 몇 가지 좋은 예로는 lighttpd와 nginx가 있습니다. 이 튜토리얼에서는 Ubuntu 서버에 nginx를 설치하는 방법을 보여드리겠습니다. 이 튜토리얼은 Debian에도 적용됩니다. 아주 작은 차이만 있습니다.

준비되셨나요? 시작해봅시다.

단계 0 - 사전 노트

이 튜토리얼을 완료하기 위해서는 Ubuntu Lucid (10.04)의 기본 시스템이 설치되어 있다고 가정합니다. 이것이 어떻게 이루어질 수 있는지는 다양한 튜토리얼에서 읽을 수 있습니다. 이 튜토리얼은 nginx+php를 번거롭지 않게 실행하는 데만 집중합니다.

단계 1 - Nginx

nginx를 설치하는 것은 우리가 해야 할 첫 번째 단계입니다. 이는 저장소에서 다운로드하여 쉽게 수행할 수 있습니다.

sudo apt-get install nginx

기본 vhost는 제대로 작동하도록 변경해야 합니다.

sudo vim /etc/nginx/sites-available/default

구성의 좋은 시작점은 다음과 같습니다:

server {  
    listen   80;  
    server_name  localhost;  
    access_log  /var/log/nginx/localhost.access.log;  
  
## 기본 위치  
    location / {  
        root   /var/www;  
        index  index.php;  
    }  
  
## 이미지 및 정적 콘텐츠는 다르게 처리됨  
    location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|xml)$ {  
      access_log        off;  
      expires           30d;  
      root /var/www;  
    }  
  
## /var/www 디렉토리의 모든 .php 파일 파싱  
    location ~ .php$ {  
        fastcgi_split_path_info ^(.+\.php)(.*)$;  
        fastcgi_pass   backend;  
        fastcgi_index  index.php;  
        fastcgi_param  SCRIPT_FILENAME  /var/www$fastcgi_script_name;  
        include fastcgi_params;  
        fastcgi_intercept_errors        on;  
        fastcgi_ignore_client_abort     off;  
        fastcgi_connect_timeout 60;  
        fastcgi_send_timeout 180;  
        fastcgi_read_timeout 180;  
        fastcgi_buffer_size 128k;  
        fastcgi_buffers 4 256k;  
        fastcgi_busy_buffers_size 256k;  
        fastcgi_temp_file_write_size 256k;  
    }  
  
## .htaccess 및 .htpassword 보기 비활성화  
    location ~ /\.ht {  
        deny  all;  
    }  
}  
upstream backend {  
        server 127.0.0.1:9000;  
}  
 

좋습니다. 이제 PHP에 필요한 파일을 설치하겠습니다.

단계 2 - PHP 설치

많은 사이트가 위키, 포럼 소프트웨어, 블로그 또는 완전히 다른 것과 같은 동적 콘텐츠를 제공하기 위해 PHP에 의존합니다.

Ubuntu Lucid (10.04)에서 PHP5.3가 공식적으로 지원되므로 DotDeb를 사용할 필요가 없습니다. 다음과 같이 간단합니다:

sudo apt-get update

결과 텍스트에는 dotdeb가 포함되어야 합니다.

이제 PHP를 설치하겠습니다. PHP-FPM을 설치하려면 공식적으로 지원되지 않기 때문에 PPA를 추가해야 합니다.

 add-apt-repository ppa:brianmercer/php
sudo apt-get update && sudo apt-get install php5-fpm

데이터베이스를 사용할 계획이거나 특정 모듈(mcrypt, ldap, snmp 등)이 필요한 경우에도 설치할 수 있습니다.

좋습니다. 이제 nginx와 PHP가 설치되어 준비되었습니다.

단계 3 - 마무리

이전에 변경한 구성 변경 사항을 반영하기 위해 nginx를 재시작합니다.

sudo service nginx restart

재시작은 문제 없이 진행되어야 합니다.

php5-fpm을 설치한 후에는 시작되었어야 합니다. php.ini 파일을 변경한 경우 php5-fpm을 재시작해야 합니다.

sudo service php5-fpm restart

좋습니다. 이제 두 개 모두 실행되고 있어야 합니다.

단계 4 - 테스트

PHP 실행이 작동하는지 테스트하기 위해 /var/www에 다음 내용을 가진 index.php 파일을 생성합니다:

웹 서버를 방문하면 생성된 phpinfo를 볼 수 있어야 합니다. 그렇지 않다면 뭔가 잘못된 것입니다.

단계 5 - 문제 해결 및 최종 노트

phpinfo를 보지 못했다면 뭔가 잘못된 것일 수 있습니다. 무엇이 잘못되었는지 추적하기 위해 nginx 오류 로그를 확인할 수 있습니다:

sudo tail /var/log/nginx/error.log

php.ini를 변경한 경우 php5-fpm을 재시작해야 한다는 점을 기억하세요. nginx를 재시작할 필요는 없습니다.

내 예제 구성에서는 fastcgi 오류 가로채기를 활성화했습니다. 심각한 오류가 발생하면(예: “cannot redeclare class xyz”) nginx가 이 페이지를 가로채고 문제가 발생했다는 “멋진” 오류 페이지를 표시할 수 있습니다. 이렇게 하면 심각한 문제가 발생할 경우 제공되는 정보가 줄어듭니다.

이것이 마음에 들지 않으면 끌 수 있습니다.

php5-fpm이 실행되지 않으면 PHP 파일을 파싱할 수 없으며 nginx는 사용자에게 오류 페이지를 표시합니다.

좋습니다. 이제 우리는 끝났고 새로운 nginx 기반 웹 서버로 PHP를 제공할 수 있습니다. Nginx는 매우 훌륭하며 많은 구성을 할 수 있습니다. 리라이트가 필요하다면 nginx는 .htaccess 파일과 함께 작동하지 않음을 유의하세요. 리라이트가 작동하도록 하려면 vhost 설정을 변경해야 합니다.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.