서버 설정 · 2 min read · Oct 08, 2025

완벽한 서버 - 우분투 자운티 재칼로프 (우분투 9.04) [ISPConfig 2] - 페이지 6

17 Apache/PHP5/Ruby/Python/WebDAV

이제 Apache를 설치합니다:

aptitude install apache2 apache2-doc apache2-mpm-prefork apache2-utils apache2-suexec libexpat1 ssl-cert

다음으로 PHP5, Ruby 및 Python을 설치합니다(모두 Apache 모듈로):

aptitude install libapache2-mod-php5 libapache2-mod-ruby libapache2-mod-python php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

다음으로 /etc/apache2/mods-available/dir.conf를 편집합니다:

vi /etc/apache2/mods-available/dir.conf

그리고 DirectoryIndex 줄을 변경합니다:

| #DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml |

이제 몇 가지 Apache 모듈(SSL, rewrite, suexec, include 및 WebDAV)을 활성화해야 합니다:

a2enmod ssl  
a2enmod rewrite  
a2enmod suexec  
a2enmod include  
a2enmod dav_fs  
a2enmod dav

Apache를 재시작합니다:

/etc/init.d/apache2 restart

Ruby와 관련된 작은 문제를 해결해야 합니다. ISPConfig를 설치하고 웹사이트에 대해 Ruby를 활성화하면 .rbx 파일은 잘 실행되고 브라우저에 표시되지만, .rb 파일은 다운로드하라는 메시지가 표시됩니다. 이는 Ruby를 수동으로 vhost에 대해 구성할 때도 동일하게 발생합니다(즉, ISPConfig와는 관련이 없습니다). 이를 해결하기 위해 /etc/mime.types를 엽니다…

vi /etc/mime.types

… 그리고 application/x-ruby 줄을 주석 처리합니다:

| [...] #application/x-ruby rb [...] |

Apache를 재시작합니다:

/etc/init.d/apache2 restart

이제 .rb 파일도 .rbx 파일처럼 실행되고 브라우저에 표시됩니다.

다음 장(17.1)에서는 PHP를 비활성화할 것입니다(이는 이 서버에 ISPConfig를 설치하려는 경우에만 필요합니다). PHP와 달리 Ruby와 Python은 기본적으로 비활성화되어 있으므로 우리는 이를 수행할 필요가 없습니다.

17.1 PHP 전역 비활성화

(이 서버에 ISPConfig를 설치할 계획이 없다면 이 섹션을 건너뛰십시오!)

ISPConfig에서는 웹사이트별로 PHP를 구성할 수 있습니다. 즉, 어떤 웹사이트가 PHP 스크립트를 실행할 수 있고 어떤 웹사이트가 실행할 수 없는지를 지정할 수 있습니다. PHP가 전역적으로 비활성화되어 있어야만 이 기능이 작동합니다. 그렇지 않으면 모든 웹사이트가 ISPConfig에서 지정한 것과 관계없이 PHP 스크립트를 실행할 수 있습니다.

PHP를 전역적으로 비활성화하려면 /etc/mime.types를 편집하고 application/x-httpd-php 줄을 주석 처리합니다:

vi /etc/mime.types

| [...] #application/x-httpd-php phtml pht php #application/x-httpd-php-source phps #application/x-httpd-php3 php3 #application/x-httpd-php3-preprocessed php3p #application/x-httpd-php4 php4 [...] |

/etc/apache2/mods-enabled/php5.conf를 편집하고 다음 줄을 주석 처리합니다:

vi /etc/apache2/mods-enabled/php5.conf

| # AddType application/x-httpd-php .php .phtml .php3 # AddType application/x-httpd-php-source .phps |

그런 다음 Apache를 재시작합니다:

/etc/init.d/apache2 restart

18 Proftpd

Proftpd를 설치하려면 다음을 실행합니다:

aptitude install proftpd ucf

질문이 표시됩니다:

Run proftpd: <– standalone

보안상의 이유로 /etc/proftpd/proftpd.conf에 다음 줄을 추가합니다(감사합니다 Reinaldo Carvalho; 더 많은 정보는 여기에서 확인할 수 있습니다: http://proftpd.org/localsite/Userguide/linked/userguide.html):

vi /etc/proftpd/proftpd.conf

| [...] DefaultRoot ~ IdentLookups off ServerIdent on "FTP Server ready." [...] |

ISPConfig는 구성이 /etc/proftpd/proftpd.conf가 아닌 /etc/proftpd.conf에 있을 것으로 예상하므로 심볼릭 링크를 생성합니다(ISPConfig를 설치할 계획이 없다면 이 명령을 건너뛰어도 됩니다):

ln -s /etc/proftpd/proftpd.conf /etc/proftpd.conf

그런 다음 Proftpd를 재시작합니다:

/etc/init.d/proftpd restart
Share: X/Twitter LinkedIn

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

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