서버 설치 · 4 min read · Dec 18, 2025

Debian Wheezy에서 PHP5 (PHP-FPM) 및 MySQL 지원과 함께 Lighttpd 설치하기

Lighttpd는 속도가 중요한 환경을 위해 설계된 안전하고 빠르며 표준을 준수하는 웹 서버입니다. 이 튜토리얼에서는 PHP5 지원( PHP-FPM을 통해) 및 MySQL 지원과 함께 Debian Wheezy 서버에 Lighttpd를 설치하는 방법을 보여줍니다. PHP-FPM(FastCGI Process Manager)은 모든 크기의 사이트, 특히 더 바쁜 사이트에 유용한 몇 가지 추가 기능이 있는 대체 PHP FastCGI 구현입니다. 이 튜토리얼에서는 Lighttpd의 spawn-fcgi 대신 PHP-FPM을 사용합니다.

나는 이것이 당신에게 작동할 것이라는 보장을 하지 않습니다!

1 사전 참고

이 튜토리얼에서는 호스트 이름 server1.example.com과 IP 주소 192.168.0.100을 사용합니다. 이러한 설정은 귀하와 다를 수 있으므로 적절한 곳에서 교체해야 합니다.

2 MySQL 5 설치하기

먼저 다음과 같이 MySQL 5를 설치합니다:

apt-get install mysql-server mysql-client

MySQL root 사용자에 대한 비밀번호를 제공하라는 메시지가 표시됩니다. 이 비밀번호는 사용자 root@localhost 및 [email protected]에 유효하므로 나중에 MySQL root 비밀번호를 수동으로 지정할 필요가 없습니다:

MySQL “root” 사용자에 대한 새 비밀번호: <– yourrootsqlpassword
MySQL “root” 사용자에 대한 비밀번호를 반복 입력하세요: <– yourrootsqlpassword

3 Lighttpd 설치하기

Lighttpd는 Debian 패키지로 제공되므로 다음과 같이 설치할 수 있습니다:

apt-get install lighttpd

이제 브라우저를 http://192.168.0.100/index.lighttpd.html로 이동하면 Lighttpd 자리 표시자 페이지가 표시됩니다:

Lighttpd의 기본 문서 루트는 Debian에서 /var/www이며, 구성 파일은 /etc/lighttpd/lighttpd.conf입니다. 추가 구성은 /etc/lighttpd/conf-available 디렉터리의 파일에 저장됩니다. 이러한 구성은 lighttpd-enable-mod 명령을 사용하여 활성화할 수 있으며, 이 명령은 /etc/lighttpd/conf-enabled 디렉터리에서 적절한 구성 파일로의 심볼릭 링크를 생성합니다. lighttpd-disable-mod 명령을 사용하여 구성을 비활성화할 수 있습니다.

4 PHP5 설치하기

다음과 같이 PHP-FPM을 통해 Lighttpd에서 PHP5를 작동시킬 수 있습니다:

apt-get install php5-fpm php5

PHP-FPM은 소켓 /var/run/php5-fpm.sock에서 FastCGI 서버를 실행하는 데몬 프로세스입니다(초기 스크립트 /etc/init.d/php5-fpm 포함).

5 Lighttpd 및 PHP5 구성하기

Lighttpd에서 PHP5를 활성화하려면 /etc/php5/fpm/php.ini를 수정하고 cgi.fix_pathinfo=1 행의 주석을 제거해야 합니다:

vi /etc/php5/fpm/php.ini

| [...] ; cgi.fix_pathinfo는 CGI에 대한 *실제* PATH_INFO/PATH_TRANSLATED 지원을 제공합니다. PHP의 ; 이전 동작은 PATH_TRANSLATED를 SCRIPT_FILENAME으로 설정하고 PATH_INFO가 무엇인지 이해하지 못하는 것이었습니다. PATH_INFO에 대한 자세한 내용은 cgi 사양을 참조하십시오. 이를 1로 설정하면 PHP CGI가 경로를 사양에 맞게 수정합니다. 0으로 설정하면 PHP가 이전과 같이 동작합니다. 기본값은 1입니다. 스크립트를 수정하여 PATH_TRANSLATED 대신 SCRIPT_FILENAME을 사용해야 합니다. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=1 [...] |

Lighttpd의 PHP 구성 파일 /etc/lighttpd/conf-available/15-fastcgi-php.conf는 spawn-fcgi와 함께 사용하기에 적합하지만, 우리는 PHP-FPM을 사용하고자 하므로 파일의 백업(15-fastcgi-php-spawnfcgi.conf라는 이름으로)을 만들고 15-fastcgi-php.conf를 다음과 같이 수정합니다:

cd /etc/lighttpd/conf-available/  
cp 15-fastcgi-php.conf 15-fastcgi-php-spawnfcgi.conf  
vi 15-fastcgi-php.conf

| # -*- depends: fastcgi -*- # /usr/share/doc/lighttpd/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## php를 위한 FastCGI 서버 시작 (php5-cgi 패키지가 필요함) fastcgi.server += ( ".php" => (( "socket" => "/var/run/php5-fpm.sock", "broken-scriptfilename" => "enable" )) ) |

fastcgi 구성을 활성화하려면 다음 명령을 실행합니다:

lighttpd-enable-mod fastcgi  
lighttpd-enable-mod fastcgi-php

이렇게 하면 /etc/lighttpd/conf-enabled/10-fastcgi.conf가 /etc/lighttpd/conf-available/10-fastcgi.conf를 가리키고 /etc/lighttpd/conf-enabled/15-fastcgi-php.conf가 /etc/lighttpd/conf-available/15-fastcgi-php.conf를 가리키는 심볼릭 링크가 생성됩니다:

ls -l /etc/lighttpd/conf-enabled
root@server1:/etc/lighttpd/conf-available# ls -l /etc/lighttpd/conf-enabled  
total 0  
lrwxrwxrwx 1 root root 33 Jul  1 20:45 10-fastcgi.conf -> ../conf-available/10-fastcgi.conf  
lrwxrwxrwx 1 root root 37 Jul  1 20:45 15-fastcgi-php.conf -> ../conf-available/15-fastcgi-php.conf  
root@server1:/etc/lighttpd/conf-available#

그런 다음 Lighttpd를 다시 로드합니다:

/etc/init.d/lighttpd force-reload

6 PHP5 테스트 / PHP5 설치에 대한 세부 정보 얻기

기본 웹 사이트의 문서 루트는 /var/www입니다. 이제 해당 디렉터리에 작은 PHP 파일(info.php)을 만들고 브라우저에서 호출합니다. 이 파일은 설치된 PHP 버전과 같은 PHP 설치에 대한 유용한 세부 정보를 많이 표시합니다.

vi /var/www/info.php

| |

이제 브라우저에서 해당 파일을 호출합니다(예: http://192.168.0.100/info.php):

보시다시피, PHP5가 작동하고 있으며, Server API 줄에 표시된 대로 FPM/FastCGI를 통해 작동하고 있습니다. 아래로 스크롤하면 PHP5에서 이미 활성화된 모든 모듈을 볼 수 있습니다. MySQL은 거기에 나열되어 있지 않으므로 PHP5에서 MySQL 지원이 아직 없음을 의미합니다.

7 PHP5에서 MySQL 지원 얻기

PHP에서 MySQL 지원을 얻으려면 php5-mysql 패키지를 설치할 수 있습니다. 애플리케이션에 필요할 수 있는 다른 PHP5 모듈도 설치하는 것이 좋습니다. 다음과 같이 사용 가능한 PHP5 모듈을 검색할 수 있습니다:

apt-cache search php5

필요한 모듈을 선택하고 다음과 같이 설치합니다:

apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Xcache는 PHP 중간 코드를 캐싱하고 최적화하기 위한 무료 오픈 PHP opcode 캐셔입니다. eAccelerator 및 APC와 같은 다른 PHP opcode 캐셔와 유사합니다. PHP 페이지 속도를 높이기 위해 이러한 것 중 하나를 설치하는 것이 강력히 권장됩니다.

Xcache는 다음과 같이 설치할 수 있습니다:

apt-get install php5-xcache

이제 PHP-FPM을 다시 로드합니다:

/etc/init.d/php5-fpm reload

이제 브라우저에서 http://192.168.0.100/info.php를 다시 로드하고 모듈 섹션으로 다시 스크롤합니다. 이제 MySQL 모듈을 포함하여 많은 새로운 모듈을 찾아야 합니다:

8 phpMyAdmin

phpMyAdmin은 MySQL 데이터베이스를 관리할 수 있는 웹 인터페이스입니다. 설치하는 것이 좋습니다:

apt-get install phpmyadmin

다음 질문이 표시됩니다:

자동으로 재구성할 웹 서버: <– lighttpd
phpmyadmin을 dbconfig-common으로 구성하시겠습니까? <– 아니오

그 후 http://192.168.0.100/phpmyadmin/에서 phpMyAdmin에 접근할 수 있습니다:

9 PHP-FPM을 TCP 연결 사용하도록 설정하기

기본적으로 PHP-FPM은 소켓 /var/run/php5-fpm.sock에서 수신 대기합니다. PHP-FPM이 TCP 연결을 사용하도록 설정하는 것도 가능합니다. 이렇게 하려면 /etc/php5/fpm/pool.d/www.conf를 엽니다…

vi /etc/php5/fpm/pool.d/www.conf

… 그리고 listen 줄을 다음과 같이 만듭니다:

| [...] ;listen = /var/run/php5-fpm.sock listen = 127.0.0.1:9000 [...] |

이렇게 하면 PHP-FPM이 IP 127.0.0.1(로컬호스트)의 포트 9000에서 수신 대기하게 됩니다. 시스템에서 사용 중이지 않은 포트를 사용해야 합니다.

그런 다음 PHP-FPM을 다시 로드합니다:

/etc/init.d/php5-fpm reload

그 다음 Lighttpd의 PHP 구성 파일 /etc/lighttpd/conf-available/15-fastcgi-php.conf를 열고 소켓 줄을 호스트 및 포트 줄로 교체합니다:

vi /etc/lighttpd/conf-available/15-fastcgi-php.conf

| # -*- depends: fastcgi -*- # /usr/share/doc/lighttpd/fastcgi.txt.gz # http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi ## php를 위한 FastCGI 서버 시작 (php5-cgi 패키지가 필요함) fastcgi.server += ( ".php" => (( "host" => "127.0.0.1", "port" => "9000", "broken-scriptfilename" => "enable" )) ) |

마지막으로 Lighttpd를 다시 로드합니다:

/etc/init.d/lighttpd force-reload

10 링크

Share: X/Twitter LinkedIn

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

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