블로그의 새로운주소
이주소를 이용해주세요
**2010년 4월 22 일 수정 - 내용추가, 부분수정
이전에
https://hoing.io/archives/183 에서 세팅했던
apache + tomcat+jdk+오라클+톰켓 커넥터이용 연동되었던 환경에서
계속 APM을 연동하겠습니다
apache는 전에 연동하면서 설치했던것으로 사용합니다
Yum 으로 APM+ Zend optimizer
설치 환경 및 버전
OS | Centos 5.2 |
Apache2.2 | httpd-2.2.3-22.el5.centos.2 |
PHP | php-5.1.6-23.2.el5_3 |
MYSQL | mysql-5.0.77-3.el5 |
RAM | 755MB |
설치순서는 apache mysql php 순으로 설치 하겠습니다 작업은 root로 합니다
1.apache 설치
# yum -y install httpd
2. mysql 설치
# yum -y install mysql mysql-server mysql-devel
***설치후 mysql 계정과 mysql 그룹은 자동 추가가 됩니다
3. 필요 라이브러리 설치
# yum -y install zlib zlib-devel freetype freetype-devel freetype-utils gd gd-devel libjpeg libjpeg-devel libpng libpng-devel php-gd libmcrypt libmcrypt-devel
4. php 및 php-mysql연동 설치
# yum -y install php php-mysql
5. mysql에서 사용할 환경 설정파일을 복사 합니다 시스템에 따라 다르니 아래를 참조합니다 my-huge.cnf 1GB 이상 메모리 my-large.cnf 512MB ~ 1GBmy-medium.cnf 128MB ~ 256MBmy-small.cnf 64MB 이하
필자의 시스템은 메모리가 755MB임으로 my-large.cnf 를 이용합니다
파일을 복사합니다 기존에 파일이있기에 덮어쓸꺼냐고
물어보는데 y를치고 엔터를 칩니다
# cp /usr/share/mysql/my-large.cnf /etc/my.cnf
cp: overwrite `/etc/my.cnf'? y
my.cnf 에 UTF-8 로 character set을 지정합니다
아래 내용을 섹션에 따라서 기술해 주세요
[client]
default-character-set = utf8
[mysqld]
init_connect=SET collation_connection = utf8_general_ci
init_connect=SET NAMES utf8
default-character-set = utf8
character-set-server = utf8
collation-server = utf8_general_ci
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8
6.
기본관리 db를 설정하고 권한 지정
# /usr/bin/mysql_install_db --user=mysql
# chown -R root /usr/bin/
# chown -R mysql /var/lib/mysql/
# chgrp -R mysql /usr/bin/
7. 재부팅후 자동 실행가능하도록 등록 해줍니다
# /sbin/chkconfig --list | grep mysqld
mysqld 0:해제 1:해제 2:해제 3:해제 4:해제 5:해제 6:해제
만약 글짜가 깨진다면 LANG=C 라고 치신다음 다시 해보시기 바랍니다
필자는 런레벨3(콘솔부팅)로 이용하기에
# /sbin/chkconfig --level 3 mysqld on
이렇게 하지만 보통의 환경이라면
# /sbin/chkconfig --level 2345 mysqld on 으로 해줍니다# /sbin/chkconfig --list | grep mysqld 로 확인 합니다
8. mysql 시작, root 비밀번호 설정Mysql을 시작과 종료방법에는 3가지 방법이 있습니다 편한대로 사용하면 됩니다
[데몬 직접실행 및 중지]
/etc/init.d/mysqld [start | stop]
[service로 실행 및 중지]
/sbin/service mysqld [start | stop]
[mysql 직접 실행 및 중지]
/usr/bin/mysqld_safe &
/usr/bin/mysqladmin shutdown
개인적으로는 service mysqld start/stop 쓰는 편입니다
**동작확인
ps -ef | grep mysql 로 확인 합니다
이제 root패스워드를 지정 합니다
# mysql mysql
mysql > update user set password=password('변경할패스워드') WHERE user='root';
mysql > flush privileges;
mysql > quit
# mysql –u root –p <엔터>
밑에 줄에 비번치고 들어가서
Show databases; 를 쳐서 db상태를 확인합니다
케릭터 셋도 확인해봅니다 show variables like "c%"; <-- 쿼리를 날리면
확인후에 exit
9. apache 세팅
연동부분만 다루기에 기본세팅만 합니다 자세한 세팅은 따로 찾아보셔야 합니다
# vi /etc/httpd/conf/httpd.conf
로 열어서
DirectoryIndex index.jsp index.html index.php index.html.var
부분에 위와같이 index.php를 추가합니다
그리고 밑의 내용을 추가 합니다
AddType application/x-httpd-php .php .php3 .html .htm .phtml .inc
AddType application/x-httpd-php-source .phps
#ServerName www.example.com:80 에서 # 을 제거 해줍니다
저장하고 나온후
# service httpd restart 등으로 아파치를 재시작 합니다
**외부에서 접속 테스트시 방화벽 80포트 열어줘야 합니다**
/var/www/html 에 phpinfo.php 파일을 만든후 안의 내용은 밑에와
같이 기술합니다
<?
phpinfo();
?>
저장한후에 http://주소/phpinfo.php 나 http://localhost/phpinfo.php
를 쳐서 정상출력되면 apache와 php는 정상 연동 된것이다
10. zend optimizer 설치
http://www.zend.com/en/products/guard/downloads
로가서 os와 아키텍처에 맞는 버전을 다운받습니다 (혹은 다른곳에서 알아서)
필자가 사용한버전은
ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz 입니다
적당한 위치에서 압축을 풉니다
# tar zxvf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
3.3.9 버전부터는 이전버전의 install.sh 이 제공 되지 않습니다 일단 설치된 php버전을 확인합니다
# php -v
PHP 5.1.6 (cli) (built: Apr 7 2009 08:00:04)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
위 내용으로 5.1.6 으로 알수있습니다
php버전에 따른 zend모듈을 복사 합니다
# cd ZendOptimizer-3.3.9-linux-glibc23-i386/data/5_1_x_comp
# cp ZendOptimizer.so /usr/lib/httpd/modules/
/etc/php.ini 에 아래 내용을 추가합니다
[Zend]
zend_optimizer.version=3.3.9
zend_extension=/usr/lib/httpd/modules/ZendOptimizer.so
그리고 php –v 를 하면 전과 다르게 Zend Optimizer v3.3.3가 보입니다
조금은 이상한것이 3.3.9로 나와야 하는데 안나오니;; 좀이상하긴합니다
추가후 혹시 php -v 하였을시 아래와 같이 나온다면
Failed loading /usr/lib/httpd/modules/ZendOptimizer.so: /usr/lib/httpd/modules/ZendOptimizer.so: cannot restore segment prot after reloc: Permission denied
레드햇 계열인 rhel 이나 fedora나 centos인 경우에는
일단 setenforce 0 으로 selinux 기능을 끄시고
vi /etc/sysconfig/selinux 열어서
SELINUX=enforcing 되어있는거을 disabled 로 변경하시면
다음부팅에도 selinux가 비활성화 됩니다
아파치 서버를 재시작합니다
# service httpd restart
위에서 실행했던 phpinfo.php를 다시 실행합니다 http://주소/phpinfo.php 혹은 http://localhost/phpinfo.php
밑의 두내용이 있다면 zend optimizer가 정상작동하고 있는 것 입니다
APM연동과 Zend optimizer 설치를 마칩니다
이로써 필자의 개발서버는 html, jsp, php 3가지 처리될수 있는 환경이 되었습니다
일반적으로 APM연동후 zend optimizer설치후 jdk를 설치하면서
tomcat과 연동하는것이 일반적이나 필자는 원래는 apache 와 톰켓만
연동하려고 햇던 개발서버여서 APM을 뒤쪽에 작업했으나 보통 문서들은
APM후에 TOMCAT연동으로 순서가 된다는점을 알려드립니다
'기술자료 > 리눅스' 카테고리의 다른 글
HPADUCLI (0) | 2011.07.08 |
---|---|
CentOS SELINUX 끄기 (0) | 2011.03.25 |
Mysql binlog 이용백업방법 (0) | 2010.11.01 |
리눅스명령어 (0) | 2010.11.01 |
[CentOS] HP 서버 로그 (0) | 2010.10.29 |