레이블이 yum인 게시물을 표시합니다. 모든 게시물 표시
레이블이 yum인 게시물을 표시합니다. 모든 게시물 표시

2012년 2월 9일 목요일

yum을 사용한 apm설치


YUM을 이용한 APM 설치의 장점
- CentOS측의 권고 사항
- update의 편의성, 의존성과 관련된 패키지 설치가 용이하며 유지관리에도 많은 장점을 제공

YUM을 이용한 APM 설치의 단점
Source 컴파일에 의한 APM설치시에는 원하는 위치에 파일을 설치 할 수 있었지만 
YUM을 이용한 APM 설치시에는 기본 위치가 정해져 있다. 웹에서 그림파일을 지원하기 위한 패키지 모음

yum -y install zlib zlib-devel freetype freetype-devel freetype-utils gd gd-devel libjpeg libjped-devel libpng libpng-devel php-gd

yum은 콘솔에서 사용할 수 있는 리눅스 패키지 자동 업데이트 툴입니다. 이걸 이용하면 간편하게 패키지 업데이트들을 할수가 있죠. 단.. 컴파일 해서 설치한 경우는 제외입니다.

저도 이전에는 기본패키지만 설치하고 필요한 것들만 하나씩 컴파일 해서 사용했었는데 유지/보수를 생각한다면 yum을 이용한 패키지 관리를 추천합니다.


yum에는 이외에도 설정파일 및 저장소에 대한 정보 등등 다양한 기능+셋팅이 있겠지만 여기서는 일반유저들(저를 포함한)을 위한 기본적인 사용법에 대해서만 체크하도록 하겠습니다.
                                                          아래는 간단한 방법입니다.
1. apache 설치(httpd) : yum install httpd
2. mysql 설치 : yum install mysql
3. php 설치 : yum install php
4. php-mysql 연동 설치 : yum install php-mysql

                                                           다음은 상세방법입니다.

라이브러리를 설치 : yum -y install zlib libpng freetype gd libxml lib iconv

APM 관련 프로그램을 설치
yum -y install
httpd
mysql-server
mysql
php
php-devel
php-gd
php-mbstring
php-mysql
php-pear
php-pecl-mailparse 

1. Apache 설치

1) 설치 여부 체크 : yum list installed | grep http
2) apache port가 떠있는지 확인 : netstat -lntp
3) Apache 실행 :  /usr/sbin/apachectl start4) 데몬이 정상적 실행확인 :  netstat -lntp
     
2. Mysql 설치

1) 설치 여부 확인 : yum list installed | grep mysql
2) mysql client 설치 : yum install mysql
3) mysql server 설치 : yum install mysql-server
4) server 구동 : /etc/rc.d/init.d/mysqld start
5) password 변경 : /usr/bin/mysqladmin -u root password 'new password'
 
3. PHP 설치1) php 설치여부 확인 : which php ,yum list installed | grep php   설치 여부 확인
2) php 설치 : yum install php
3) 그외 필요요소들 설치
    yum -y install php-devel php-gd php-mbstring php-pear php-pecl-mailparse php-mysql mod_ssl4) 정상적인 설치 여부 확인 :  which php
5) 아파치의 php 설정에 다음줄을 추가해준다.
      vi /etc/httpd/conf.d/php.conf
      AddHandler php5-script .php
      AddType text/html .php
      AddType application/x-httpd-php .php .html .htm .inc  <- 추가
6) 아파치 재실행
    /usr/sbin/apachectl restart
다음은 요즘 많이들 설치하고 테스트하시는 Cent OS 셋팅법~

Continuing the series of articles covering Setting Up Apache / PHP, and Setting Up Exim this one covers a few of the smaller applications / configuration settings that need changing with a new CentOS 5 based server primarily used for virtual hosting.

iptables

iptables -F
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -I INPUT 1 -i lo -p all -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -A INPUT -p tcp --dport 40000:40100 -j ACCEPT
iptables -P INPUT DROP
/sbin/service iptables save

iptables (for IPv6)

ip6tables -F
ip6tables -I INPUT 1 -i lo -j ACCEPT
ip6tables -A INPUT -p ipv6-icmp -j ACCEPT
ip6tables -A OUTPUT -p ipv6-icmp -j ACCEPT
ip6tables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
ip6tables -A INPUT -p tcp --dport 80 -j ACCEPT
ip6tables -P INPUT DROP
/sbin/service ip6tables save

Server Timezone

rm -f /etc/localtime
cp /usr/share/zoneinfo/Europe/London /etc/localtime

NTP

yum install ntp
chkconfig ntpd on
ntpdate pool.ntp.org
/etc/init.d/ntpd start

yum (email notifications)

yum will send an email when there are packages ready to be installed (via “yum update”), it can also automatically install them however I chose not to use this option.
yum install yum-updatesd
chkconfig yum-updatesd on
service yum-updatesd start

File: /etc/yum/yum-updatesd.conf
emit_via = email
email_to=mail@example.com
do_update=no

FTP

yum install vsftpd
chkconfig vsftpd on
service vsftpd start

File: /etc/vsftpd/vsftpd.conf
chroot_local_user=YESpasv_enable=YES
pasv_min_port=40000
pasv_max_port=40100

MySQL

yum install mysql-server
chkconfig mysqld on
service mysqld start

/usr/bin/mysqladmin -u root password 'new-password'

PHP

yum install php
yum install php-gd
yum install php-mysql
yum install php-mbstring
yum install php-imap
yum install php-soap
yum install php-xml

chmod 777 /var/lib/php/session/
File: /etc/php.ini
error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
display_errors = On
upload_max_filesize = 8M

Cron

yum install vixie-cron
chkconfig crond on
service crond start

mkdir /var/log/prelink
chmod 700 /var/log/prelink
touch /var/log/prelink/prelink.log

Logrotate

yum install mlocate
mkdir /etc/logrotate.custom
chmod 700 /etc/logrotate.custom
echo $'\ninclude /etc/logrotate.custom' >> /etc/logrotate.conf
File: /etc/logrotate.custom/www.example.com
(for each website setup in apache)

/var/log/domlogs/useracctname/www.example.com*_log {
monthly
rotate 12
compress
delaycompress
create 640
missingok
notifempty
sharedscripts
postrotate
/sbin/service httpd reload > /dev/null 2>/dev/null || true
endscript
}

Extra IP Address

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0
File: /etc/sysconfig/network-scripts/ifcfg-eth0:0
DEVICE=eth0:0
IPADDR=111.222.333.444
ifconfig eth0:0 111.222.333.444 up
source : http://www.ns-tech.co.uk/blog/2010/03/setting-up-a-centos-5-server/

mysql 간단설치

-mysql yum 설치
yum install mysql-server

-sql데몬실행
service mysqld start

-sql실행 (처음엔 패스워드가 안걸려있으므로 아래와같이)
mysql -u root mysql




2012년 2월 8일 수요일

64비트 centos APM설치

환경 : CENTOS 5.X  (64BIT)

설치 내용

설치 내용
APACHE 2.2 ( mod_url + mod_security )
PHP 5.2.5
MYSQL 4.0.20 (euckr)

MYSQL은 상황에 따라 5.X로 설치해도 무관하다

이 APM을 설치하기 앞서 CENTOS5 버전은 SELINUX를 기본 사용한다
꼭 이것을 disable 한 후 리부팅 한 후에 APM 설치한다
[root@localhost ~]# vi /etc/selinux/config
SELINUX=enforcing  ---> SELINUX=disabled

[root@localhost ~]# init 6  (리부팅)

1. 라이브러리 설치하기  (기존에는 라이브러리를 일일이 컴파일 하였지만 기본적으로 제공되는 yum
  패키지를 이용하여 라이브러리를 설치 하면 된다

[root@idccc ~]# yum -y install gcc gcc-c++ termcap libtermcap libtermcap-devel gdbm-devel zlib* libxml* freetype* libpng* libjpeg* gd gd-devel libmcrypt libmcrypt-devel mhash mhash-devel apr apr-* libc-client-devel openssl-devel krb5-devel 

php설치시에 iconv에러가 발생되기 때문에 iconv만 따로 컴파일 작업을 진행한다

[root@loca ~]# wget mirror.koreaidc.com/library/libiconv-1.13.tar.gz
[root@loca ~]# tar xvfz libiconv-1.13.tar.gz
[root@loca ~]# cd libiconv-1.13
[root@loca libiconv-1.13]# ./configure && make && make install

심벌릭 링크
[root@loca libiconv-1.13]# ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2
[root@loca libiconv-1.13]# ln -s /usr/local/lib/libiconv.so.2 /usr/lib64/libiconv.so.2


3. dovecot 설치 ( pop3기능을 하면서 PHP 설치시에 IMAP 기능을 활성하 하기 위해서 설치한다)
  하지만 dovecot 을 설치하면 의존성 관계로 mysql이 같이 설치되는데 이것은 추후 삭제하면 된다

[root@idccc ~]# yum -y install dovecot

강제로 mysql을 삭제

[root@idccc ~]# rpm -e mysql --nodeps

4. MYSQL 설치

  mysql 4.x 설치시 에러가 발생되는 경우가 있는데 이는 쓰레드 옵션때문이다
  쓰레드를 사용하기 위해서 아래와 같이 옵션을 추가해준다

[root@idccc ~]# echo "/* Linuxthreads */" >> /usr/include/pthread.h

 버전에 따라 mysql을 다운로드 하면 된다

[root@idccc ~]# wget mirror.koreaidc.com/mysql/mysql-4.0.20.tar.gz
[root@idccc ~]# tar xvfz mysql-4.0.20.tar.gz
[root@idccc ~]# cd mysql-4.0.20
[root@idccc mysql-4.0.20]# ./configure --prefix=/usr/local/mysql \
--with-unix-soket-path=/usr/local/mysql/tmp --enable-thread-safe-client \
--with-charset=latin1 --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static \
--without-debug --with-innodb --with-readline --with-berkeley-db --without-bench \
--with-extra-charsets=complex --with-charset=euc_kr --localstatedir=/free/mysql_data

[root@idccc mysql-4.0.20]# make
[root@idccc mysql-4.0.20]# make install

데이터베이스 인스톨

[root@idccc mysql-4.0.20]# cd /usr/local/mysql/bin
[root@idccc bin]# ./mysql_install_db

환경설정 파일 복사 및 퍼미션 변경

[root@idccc bin]# cd /usr/local/mysql/share/mysql
[root@idccc mysql]# cp -p ./mysql.server /usr/bin
[root@idccc mysql]# cp -a /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysql
[root@idccc mysql]# ln -s /etc/rc.d/init.d/mysql /etc/rc.d/rc3.d/S97mysql
[root@idccc mysql]# chown -R root /usr/local/mysql
[root@idccc mysql]# chown -R mysql /free/mysql_data
[root@idccc mysql]# chgrp -R mysql /usr/local/mysql
[root@idccc mysql]# cp /usr/local/mysql/share/mysql/my-huge.cnf /etc/my.cnf

5. APACHE 설치

[root@idccc mysql]# cd /root
[root@idccc ~]# wget http://mirror.koreaidc.com/apache/httpd-2.2.14.tar.gz
[root@idccc ~]# tar xvfz httpd-2.2.14.tar.gz
[root@idccc ~]# cd httpd-2.2.14

기본값으로 설치시에는 최대 접속자수가 256이다 이것을 2048까지 늘려주기 위해 파일을 수정한다
여기서는 vi를 이용하지 않고 perl을 이용해 바로 수정하였다

[root@idccc httpd-2.2.14]# perl -pi -e "s/LIMIT 256/LIMIT 2048/g" server/mpm/prefork/prefork.c
[root@idccc httpd-2.2.14]# perl -pi -e "s/LIMIT 16/LIMIT 128/g" server/mpm/worker/worker.c

컴파일 작업 (옵션 내용중에서 prefork 방식과 worker 방식이 있는데 쓰레드 방식을 이용한다면
worker 선택하면 된다 즉 자식 프로세서를 이용한다는 것이다)

[root@idccc httpd-2.2.14]# ./configure --prefix=/usr/local/apache --enable-mods-shared=all --enable-module=shared --enable-rewrite --enable-ssl --with-ssl --with-mpm=worker
[root@idccc httpd-2.2.14]# make
[root@idccc httpd-2.2.14]# make install


mod_url 설치 (한글로 된 파일 오류 표시 수정)

[root@idccc ~]# wget mirror.koreaidc.com/apache/mod_url-apache2-1[1].15.tar.bz2
[root@idccc ~]# tar xvfj mod_url-apache2-1\[1\].15.tar.bz2
[root@idccc ~]# cd mod_url-apache2
[root@idccc mod_url-apache2]# /usr/local/apache/bin/apxs -iac mod_url.c

이제 APACHE는 설치가 완료되었으므로 상황에 맞게 APACHE를 튜닝하면 된다 

6.PHP 설치

PHP설치에 앞서 라이브러리를 인식시키는 작업을 한다

[root@loca ~]# echo "/lib" >> /etc/ld.so.conf
[root@loca ~]# echo "/lib64" >> /etc/ld.so.conf
[root@loca ~]# echo "/lib" >> /etc/ld.so.conf
[root@loca ~]# echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
[root@loca ~]# echo "/usr/local/apache/modules" >> /etc/ld.so.conf
[root@loca ~]# echo "/usr/lib64" >> /etc/ld.so.conf
[root@loca ~]# echo "/usr/local/lib64" >> /etc/ld.so.conf
[root@loca ~]# ldconfig

PHP 다운로드 및 설치

[root@idccc ~]# wget http://mirror.koreaidc.com/php/php-5.2.5.tar.gz
[root@idccc ~]# tar xvfz php-5.2.5.tar.gz
[root@idccc ~]# cd php-5.2.5
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/apache/conf --with-png-dir=/usr/lib64 --with-zlib-dir=/usr/lib64 --with-gdbm=/usr/lib64 --with-gif-dir=/usr/lib64 --with-iconv=/usr/local --with-libidn=/usr/lib64 --with-freetype-dir=/usr --with-jpeg-dir=/usr --enable-mod-charset --with-language=korean --with-charset=euc_kr --with-gettext --with-ldap-dir=/usr/lib --with-imap --with-imap-ssl --with-ttf --with-kerberos --with-curl --with-db --with-png --with-zlib --with-xml --with-idn --with-gd --enable-exif --enable-trans-sid --enable-wddx --enable-magic-quotes --enable-calendar --enable-sockets --enable-ftp --enable-gd-imgstrttf --enable-bcmath --enable-force-cgi-redirect --enable-track-vars=yes --enable-mbstring --enable-mbregex --enable-mbstr-enc-trans --enable-sigchild --enable-idn --enable-sockets --enable-dbx --enable-dbase
[root@idccc php-5.2.5]# make
[root@idccc php-5.2.5]# make install

php.ini 파일 복사 및  환경설정 내용 변경  (vi로 변경해도 되지만 쉽게 perl로 변경)

[root@idccc php-5.2.5]# cp -a php.ini-dist /usr/local/apache/conf/php.ini
[root@idccc php-5.2.5]# perl -pi -e "s/register_globals = Off/register_globals = On/g" /usr/local/apache/conf/php.ini
[root@idccc php-5.2.5]# perl -pi -e "s/upload_max_filesize = 2M/upload_max_filesize = 12M/g" /usr/local/apache/conf/php.ini
[root@idccc php-5.2.5]# perl -pi -e "s/allow_url_fopen = On/allow_url_fopen = Off/g" /usr/local/apache/conf/php.ini

일반 사용자도 php를 사용할수 있게 심벌릭 링크

[root@idccc php-5.2.5]# ln -s /usr/local/php/bin/php /usr/bin/php

아파치에 모듈 추가

[root@idccc php-5.2.5]# vi /usr/local/apache/conf/httpd.conf

LoadModule php5_module        modules/libphp5.so

7. ZendOptimizer 설치 (php 가속도를 위해서 설치)

[root@idccc ~]# wget http://mirror.koreaidc.com/Zend/ZendOptimizer-3.3.3-linux-glibc23-x86_64.tar.gz
[root@idccc ~]# tar xvfz ZendOptimizer-3.3.3-linux-glibc23-x86_64.tar.gz
[root@idccc ~]# cd ZendOptimizer-3.3.3-linux-glibc23-x86_64
[root@idccc ZendOptimizer-3.3.3-linux-glibc23-x86_64]# ./install

php.ini  위치 입력시 다음과 같이 입력  :  /usr/local/apache/conf   

8. 이제 최종 모두 설치가 완료 되었다
  각 데모은 실행시켜보면 동작이 되는지를 확인하며 된다

CentOS APM설치 (YUM 사용)


CentOS는 RedHat Enterprise의 클론 리눅스다.. 무료로 RHEL의 검증되고 안정된 서버를 구축할 수 있다는 장점을 가지고 있다.

서버용으로 설치한다고는 해도 설치과정은 GUI로 할 수 있으니 파티션 잡는 것만 잘 넘어간다면 어려운 것은 없으니 언급하지 않겠다. 기회가 되면 이것도 한번 다뤄보는 것도 좋을 듯 싶기도 하고..
참고로 좀 안다 싶은 사람들을 위한 것이 아닌 본인처럼 완전 개초보를 위한 글이므로 이 글을 읽는 사람 중에 이건 아니다 싶은 사람은 미련 없이 "GET OFF!!"하기 바란다. 

사실 APM설치에 대해 인터넷에서 검색해보면 굉장히 많은 자료가 나오고 그 자료 마다 컴파일 하는데 있어서의 방법 등에 있어서 상당히 다른 방법을 제시하는 경우가 많다.

그들을 무시 하는 것은 아니지만 초보가 보기에는 상당히 혼란스럽고 어렵기만 하다. 또한 안정적으로 검증된, 제공된 방법으로 설치를 하고 싶을 수도 있고..
세세한 커스터마이즈는 나중에 해보기로 하고 지금 당장 설치를 원하는 초보들을 위해 yum으로 설치하는 방법을 소개하고자 한다. (더 쉬운 건 첨에 설치할 때 패키지 설치 해버리면 끝이겠지만......)
더보기
일단 인터넷이 되는지 확인 해보자 그래야 yum이던 뭐든 할것이다. 구글사마께 핑을 드려보자.
# ping -c3 google.com
자 핑이 잘 뜨면 인터넷은 잘 된다고 보고~ 이제 본격적으루다가..

준비작업(현 단계에서는 필수가 아니고 약간의 편의를 위해서 이므로 넘어가도 되고 아래 실제 설치 단계에서도 사용하지는 않는다.)1. putty
   리눅스 자체 콘솔 보다는 Putty가 다루는데 많은 편의를 제공 할 것이다.
   "창 - 변환 - 수신 데이터의 문자 셋 변환"에서 UTF8로 설정하고 접속 하면 한글도 잘 보이고 좋다.

2. FTP서버
  ftp서버 환경을 미리구성하고 놓고 작업을 하면 조금은 더 편하다. 언젠가는 설치 해야 하니까 FTP환경을 구축해보자. 설치는 vsftpd를 해보자.
# yum -y install vsftpd

설정 편집은 다음과 같이 하자.
# vi /etc/vsftpd/vsftpd.conf
편집은 i키를 누르고 수정, esc키를 눌러 편집 종료, :wq 라고 입력하고 엔터 하면 저장 하고 종료.
특별히 지금은 설정할 필요가 별로 없다. 나중에 인터넷의 각졸 글들을 참조 해서 설정해주고 일단 chroot_list만 비활성또는 주석 되어 있는지 확인만 하자. 이유는 내 폴더의 상위에 접속 할 수 있어야 설치 단계에서는 그나마 편하기 때문인데 나중에 보안의 문제가 있으니 나중에는 막아 두길 권장한다.

뿌띠와 FTP서버가 준비 되었으면 설치 작업을 시작 한다.

알림. 아래  방법대로 설치시 PHP 5.1.6으로 설치 된다. 이러저러한 이유로 상위 버전으로 설치하고 싶다면 이 글의 제일 아래부분을 확인 하자.
apacahe, mysql, php순으로 APM 설치
# yum -y install httpd
# yum -y install mysql
# yum -y install php

보통 알아서 빠른 미러를 찾아 의존성까지 확인해서 연계된 필수 패키지까지 알아서 설치 해준다.

관련 라이브러리 설치
# yum -y install gd gd-devel# yum -y install libpng libpng-devel# yum -y install libjpeg libjpeg-devel# yum -y install freetype freetype-devel
# yum -y install fontconfig  fontconfig-devel
# yum -y install libxml2 libxml2-devel
# yum -y install openssl openssl-devel# yum -y install gmp gmp-devel# yum -y install mhash mhash-devel# yum -y install libmcrypt libmcrypt-devel
# yum -y install mysql-server# yum -y install php-mysql
# yum -y install php-devel
# yum -y install php-gd
# yum -y install php-mbstring
# yum -y install php-mhash
이 밖에도 pear나 pear-MDB2등 원하는 패키지를 설치 할 수도 있다.
* 제일 처음에 나오는 gd를 설치하면 뒤에 나오는 libjpeg, libpng, freetype, fontconfig과 같이 자동으로 설치되지만 혹시나 하는 분들은 확인겸 설치 해보기 바란다.

MYSQL 설정 - 안하고 패스 해도 됨
이제 설정을 하자...
mysql에서 사용할 환경 설정파일을 복사해야 하는데 시스템에 따라서 좀 다르다. 아래를 참조하자
my-huge.cnf       1GB 이상 메모리
my-large.cnf       512MB ~ 1GB
my-medium.cnf  128MB ~ 256MB
my-small.cnf      64MB 이하
# cp /usr/share/mysql/my-large.cnf /etc/my.cnf
본인은 Virtual Box로 설치해봤는데 512여서 large를 사용했다.

기본관리 db를 설정하고, 권한지정도 해주자
# /usr/bin/mysql_install_db --user=mysql
# chown -R root /usr/bin/
# chgrp -R mysql /usr/bin/
# chown -R mysql /var/lib/mysql/

이제 콘솔에서도 mysql 명령들을 사용 할 수 있도록 등록해보자.
# vi ~/.bash_profile
PATH부분에 다음과 같이 추가 한다
PATH=$PATH:$HOME/bin:/usr/bin

지루한 mysql 설정은 이제 다 끝났다 다만 재부팅 후 자동으로 실행 할 수 있도록 등록만 해주면 된다. 일단 확인 해보자.
# chkconfig  --list | grep mysqld
mysqld  0:off 1:off 2:on 3:on 4:on 5:on 6:off
위와 같이 나오지 않는다면?
# chkconfig --level 2345 mysqld on
다시 확인해 보면 원하는 대로 되어 있을 것이다.

이제 mysql를 시작하고 루트 비밀번호를 설정하고 동작 하는지 확인한 후 mysql은 끝내자.
# /etc/rc.d/init.d/mysqld start
# /usr/bin/mysqladmin -uroot password 비번
동작은 하나?
# netstat -lntp
위와 같은 명령에서 보이는 결과중 "mysqld"  ":::3306" 뭐 이런 글귀가 보이면 정상적으로 동작한다고 생각해도 된다.

PHP설정
# vi /etc/httpd/conf.d/php.conf
아래 두줄을 찾아 아래처럼 고친다. 
AddHandler php5-script .php .htm .html
AddType application/x-httpd-php-source .phps .php .htm .html

수정이 끝났으면 저장 하고  같은 방법으로 httpd.conf 파일을 아래와 같은 부분들을 찾아 수정/추가한다.

# vi /etc/httpd/conf/httpd.conf

#ServerName www.example.com:80 (자신의 서버이름이니 알아서 적당히)
   => ServerName localhost:80 
Options Indexes FollowSymLinks
  => Options -Indexes
AllowOverride None
  => AllowOverride All
DirectoryIndex index.html index.html.var
 => DirectoryIndex index.html index.htm index.php
AddType application/x-gzip .gz .tgz 을 찾아 그 다음줄에 아래 두줄  내용 추가
AddType application/x-httpd-php .htm .html .php .ph php3 .php4 .phtml .inc
AddType application/x-httpd-php-source .phps
#AddHandler cgi-script .cgi 주석 삭제
  => AddHandler cgi-script .cgi


*  
사실 vi 나 vim등 리눅스의 에디터는 윈도우즈에 익숙한 사람에게는 더 없이 당황하게 만드는 소프트웨어중 하나인데(적응만 한다면 더 없는 최고의 에디터라지만 적응은 요원하기만 하다!) 좀 쉽게 사용을 원한다면 "#yum -y install mc" 해서 mc를 사용해 보라 조금은 편하게 사용 할 수 있을것이다.
 사실 제일 편한건 콘솔에서 직접 하는 것보다 뿌띠로 열어서  하는것과 FTP로 수정 하는것이다.. 위에서 FTP로는 에디트플러스 같은걸로 바로 수정하면 되니까..

여기서 수정하고 추가 할것이 많기는 많다. 엄청.. 인터넷을 뒤져 보면 이부분에 대한 많은 분서를 접할 수 있을 거라고 생각 되는데  이 문서가 부족하다고 느끼는 사람이 있거나 입맛에 맞는 설정을 원하는 사람은 맛보기로 설치 해보고 제대로 공부 해보자. 친절히 설명된 많은 문서를 볼 수 있을것이다(검색의 수고로움이 더해져야 하지만.. 대부분 자기는 안다고 휘리릭 넘어가는 경우가 많다....)

자 마지막으로 apache다!
설정 할 것은 일단 하나뿐이고 어렵 않으니 후딱하도록 하자!

특별히 다른 것은 없고 부팅 시 자동 실행이 되도록 되어 있나 확인만 해보자
# chkconfig  --list | grep httpd
httpd  0:off 1:off 2:on 3:on 4:on 5:on 6:off
역시나 위처럼 나오지 않는다면 아래와 같이 설정한다.
# chkconfig --level 2345 httpd on
다시 확인해 보면 원하는 대로 되어 있을 것이다.

이제 apache를 시작해보고 동작이 되는지 확인한다
# /usr/sbin/apachectl start
# netstat -lntp
위와 같은 명령에서 보이는 결과중 "httpd"  ":::80" 뭐 이런 글귀가 보이면 정상적으로 동작한다고 생각해도 된다.

끝으로 시스템을 전체적으로 업데이트 해보자
# yum update
주루룩 뭔가 많이 지나가고 업데이트 된다. 끝났다면
# reboot
으로 시스템을 재시작 함으로서 모든 설치 과정은 끝난다.

테스트 설치 환경
VM : VirtualBox
RAM :  512MB
HDD : 80GB
OS image : CentOS-5.3-i386-bin-DVD.iso
 설치 시 네트워크는 NAT로 사용했고 테스트는 호스트 OS에서 접근을 해야 하므로 HOST-Only로 테스트 했다.
 Virtual Box는 아쉽게도 본인이 사용법을 정확히 이해하지 못했는지 호스트 OS가 바로 게스트 OS에 접근이 불가능했다. 하지만 공유기를 이용하고IP를 Virtual Box 호스트 어댑터와 같은 대역으로 맞춘다면 인터넷도 가능 하리라 생각해본다. (귀찮아서 공유기 연결 안 했음)

아래는 위 설정 방법으로 설치된 스크린샷이다.
더보기

사실 apache의 httpd.conf의 설정 등 세세한 것이 아~~~주 많이 남았지만 위에 설명한 것 만으로도 처음 글을 시작할 때 yum으로 간단히 설치하기의 취지에 조금 벗어나지 않았나 싶을 정도로 긴 설치였다.

하지만 차근히 따라만 한다면 쉽게 끝낼 수 있으리라 본다. 다만 vi의 사용법이 더 어려울지도 모르겠다. ^^a

 그리고 실제 릴리즈된 버전보다 YUM으로 설치하면 버전이 낮은 경우가 많은데 글의 서두에 말했다시피 CentOS는 RHEL의 클론이다. 즉 안정성에 우선된 검증된 릴리즈를 이용한다는 것이라고 보면 틀리지 않다고 생각된다. 
 엔터프라이즈 환경에서의 가장 중요한 점은 성능도 성능이지만 안정성이 최우선시 되는 게 당연하다고 본인은 느끼기 때문에 버전이 현재 릴리즈보다 낮다고 나쁠 건 없지 않겠는가?

추가. 위 방법대로 설치시 PHP 5.1.6으로 설치 된다. 이러저러한 이유로 상위 버전으로 설치하고 싶다면 아래처럼 해보자.
 
# cd /etc/yum.repos.d
# wget http://dev.centos.org/centos/5/CentOS-Testing.repo
$ yum --enablerepo=c5-testing update php
이렇게 하면 5.2.10으로 설치된다.
나중에 상위버전으로 설치한 경우 반드시 yum update 해줘야 함을 잊지말자! 꼭..