server Zend Optimizer + eAccelerator + Suhosin

2010.05.11 17:25

Elkha 조회 수:18010

참고 문서  

zend.jpg

eaccelerator.png

이 게시물은 리눅스 서버 구축의 포스팅을 따라하면서 막힌 부분을 수정한 것입니다.
지금 보고 계시는 사이트의 서버도 동일한 방법으로 구축하였습니다. (32bit CentOS)
저는 이 분야에 관한 지식이 깊지 않으며, 정확하지 않은 내용이 있을 수도 있습니다.

들어가기에 앞서..

XE를 운영하기 위해서는 php 가속 프로그램이 필수적이며 제 경험상 가속 프로그램을 두 가지 이상 설치하는 것이 좋습니다..
검색해보면 아시겠지만 주로 Zend Optimizer + (eAccelerator | xCache) 설치를 권하고 있습니다.
가속기를 설치하는데는 다양한 방법이 있겠지만, 이 게시물에서는 Zend Optimizer + eAccelerator 에 관한 내용만 다룹니다.

가속 프로그램 외에도 Suhosin 이라는 보안 모듈이 있습니다.
한국을 좋아하는 독일인이 만든 프로그램으로, php의 허술한 보안을 강화시켜 준다고 합니다.
이와 관련된 내용은 KLDP에서 참고.

Zend Optimizer

Zend Optimizer를 다운로드 받습니다.
Zend Optimizer는 재 배포를 금지하기 때문에 직접 회원가입하셔서 다운로드 받아야 합니다.
저는 3.3.3 버전을 설치했으며 3.3.9 버전은 설치 방법이 조금 다릅니다.

# tar xvfz ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
# cd ZendOptimizer-3.3.3-linux-glibc23-i386
# ./install

./install 하고나서 php.ini 위치를 입력하라고 나오는데, 디렉토리는 /usr/local/php/lib 으로 합니다.
나머지 부분은 그냥 진행하시면 됩니다.
설치가 완료되면 php.ini 파일은 /usr/Zend/etc/php.ini 경로에 이동됩니다.

eAccelerator

eAccelerator를 다운로드 받습니다.
제가 설치한 버전은 0.9.5.3 입니다.

# tar xvfj eaccelerator-0.9.5.3.tar.bz2 # cd eaccelerator-0.9.5.3
# ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config

Suhosin

앞에서 언급한 Suhosin을 설치하는 과정입니다.
제가 설치한 버전은 0.9.31으로 2010년 5월 11일 현재 최신버전이네요.

# tar xvfz suhosin-0.9.31.tgz
# cd suhosin-0.9.31
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make && make install

모듈 연동

앞에서 설치한 eAccelerator, Suhosin을 PHP모듈로 연동하는 과정입니다.

# mkdir /var/cache/eaccelerator
# chown nobody /var/cache/eaccelerator
# chmod 700 /var/cache/eaccelerator
# vi /usr/local/Zend/etc/php.ini

[Suhosin]
extension_dir=/usr/local/php/lib/php/extensions/no-debug-zts-20060613
extension=suhosin.so
[eAccelerator]
zend_extension_ts="/usr/local/php/lib/php/extensions/no-debug-zts-20060613/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/var/cache/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
eaccelerator.log_file="/var/log/eaccelerator.log"
;Zend Optimizer 문장 위에 작성합니다.

만약 웹 서버를 Lighttpd으로 설치하셨다면 위의 php.ini 내용을 조금 바꾸어 줍니다.

# vi /usr/local/Zend/etc/php.ini

[Suhosin]
;extension_dir=/usr/local/php/lib/php/extensions/no-debug-zts-20060613
extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613
extension=suhosin.so
[eAccelerator]
;zend_extension_ts="/usr/local/php/lib/php/extensions/no-debug-zts-20060613/eaccelerator.so"
extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613
extension=eaccelerator.so

기타..

번호 제목 날짜 조회 수
71 검색엔진 등록 file 2010.05.12 141609
70 VPS (가상 호스팅) 비교 file 2010.05.12 61741
69 CentOS 6 - Apache 2.4.1 컴파일 / 보안 설정 [1] 2012.04.15 29096
68 Linux Memory 사용량 file 2012.05.16 24791
67 리눅스 계정 생성/변경 [67] 2011.04.02 24190
66 CentOS 6 - MySQL 5.5 설치 [1] file 2012.04.15 21186
65 Lighttpd 설치 file 2010.05.11 20314
64 sAPM file 2010.05.12 20135
63 php + ssh2 file 2010.06.05 20048
62 마인크래프트 조합법 1 file 2011.04.01 19961
61 Linux 설치시 파티션 관리 file 2012.05.12 19040
» Zend Optimizer + eAccelerator + Suhosin file 2010.05.11 18010
59 MySQL 설치 file 2010.05.11 16651
58 Apache 설치 file 2010.05.11 16537
57 ssh 로그인 제한 2011.04.05 16362
56 CentOS 6.2 다운로드 / 설치 file 2012.04.15 16162
55 리눅스 자동 시작 file 2010.05.21 15774
54 솔라리스 mount options 2013.10.06 14996
53 PHP 설치 file 2010.05.11 14923
52 유닉스 계정 관리 2013.10.15 14428