서버 설정 · 2 min read · Oct 05, 2025
완벽한 서버 - Debian Lenny (Debian 5.0) [ISPConfig 2] - 페이지 5
14 Apache/PHP5/Ruby/Python
이제 Apache를 설치합니다:
apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils apache2-suexec libexpat1 ssl-cert다음으로 PHP5, Ruby 및 Python을 설치합니다(세 가지 모두 Apache 모듈로):
apt-get 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-suhosin php5-tidy php5-xcache php5-xmlrpc php5-xsl다음으로 /etc/apache2/mods-available/dir.conf를 편집합니다…
vi /etc/apache2/mods-available/dir.conf… 그리고 DirectoryIndex 줄을 변경합니다:
| |
이제 몇 가지 Apache 모듈(SSL, rewrite, suexec 및 include)을 활성화해야 합니다:
a2enmod ssl
a2enmod rewrite
a2enmod suexec
a2enmod includeApache를 재시작합니다:
/etc/init.d/apache2 restartRuby와 관련된 작은 문제를 해결해야 합니다. 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 파일처럼 실행되고 브라우저에 표시됩니다.
다음 장(14.1)에서는 PHP를 비활성화할 것입니다(이는 이 서버에 ISPConfig를 설치하려는 경우에만 필요합니다). PHP와 달리 Ruby와 Python은 기본적으로 비활성화되어 있으므로 우리는 이를 수행할 필요가 없습니다.
14.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| |
그런 다음 Apache를 재시작합니다:
/etc/init.d/apache2 restart15 Proftpd
Proftpd를 설치하려면 다음을 실행합니다:
apt-get install proftpd ucf질문이 표시됩니다:
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.conf에 있어야 한다고 예상하므로 심볼릭 링크를 생성합니다(ISPConfig를 설치할 계획이 없다면 이 명령을 건너뛸 수 있습니다):
ln -s /etc/proftpd/proftpd.conf /etc/proftpd.conf그런 다음 Proftpd를 재시작합니다:
/etc/init.d/proftpd restart16 Webalizer
webalizer를 설치하려면 다음을 실행합니다:
apt-get install webalizer17 시스템 시계 동기화
시스템 시계를 인터넷의 NTP (network time protocol) 서버와 동기화하는 것이 좋습니다. 다음을 실행하기만 하면 됩니다:
apt-get install ntp ntpdate그러면 시스템 시간이 항상 동기화됩니다.
18 SpamAssassin에 필요한 Perl 모듈 설치 (ISPConfig와 함께 제공됨)
다음 명령을 실행합니다:
apt-get install libhtml-parser-perl libdb-file-lock-perl libnet-dns-perl libnetaddr-ip-perl libarchive-tar-perl19 ISPConfig
서버 구성은 이제 완료되었으며, 원하신다면 이제 ISPConfig를 설치할 수 있습니다. ISPConfig 설치 매뉴얼을 확인하십시오: http://www.ispconfig.org/manual_installation.htm
19.1 SuExec에 대한 주의 사항
CGI 스크립트를 suExec 아래에서 실행하려면 ISPConfig에서 생성한 웹사이트의 홈 디렉토리를 /var/www로 지정해야 합니다. Debian의 suExec는 /var/www를 Doc_Root으로 컴파일되었습니다. 다음을 실행합니다:
/usr/lib/apache2/suexec -V출력은 다음과 같아야 합니다:
server1:~# /usr/lib/apache2/suexec -V
-D AP_DOC_ROOT="/var/www"
-D AP_GID_MIN=100
-D AP_HTTPD_USER="www-data"
-D AP_LOG_EXEC="/var/log/apache2/suexec.log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=100
-D AP_USERDIR_SUFFIX="public_html"
server1:~#따라서 ISPConfig와 함께 suExec를 사용하려면 ISPConfig 설치 중 전문가 모드에서 기본 웹 루트를 변경하지 마십시오(표준 모드에서는 웹 루트를 변경할 수 없으므로 어떤 경우에도 suExec를 사용할 수 있습니다).
20 링크
- Debian: http://www.debian.org/
- ISPConfig: http://www.ispconfig.org/
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.