Linux에서 APM(아파치,PHP,Mysql) 설치
페이지 정보
본문
Linux에서 APM(아파치,PHP,Mysql) 설치
+++++++++++++++++++++++++++++++++++++++++++++++++
2009.04.02 설치테스트 완료
# cat /proc/version (centos 4.X)
--> Linux version 2.6.9-67.0.4.ELsmp (mockbuild@builder6.centos.org) (gcc version 3.4.6 20060404 (Red Hat 3.4.6-9)) #1 SMP Sun Feb 3 07:08:57 EST 2008
+++++++++++++++++++++++++++++++++++++++++++++++++
1. 프로그램 준비
1) 구버전 제거
# rpm -qa http php mysql
# yum remove httpd php mysql -y
2) 라이브러리 및 컴파일소스의 획득.
APM을 설치하기 위해 필요한 컴파일 소스 및 라이브러리를 획득하자.
#yum install gcc* cpp* compat* flex* -y
3) 프로그램 소스 준비.
source]# wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.32.tar.gz/from/ftp://mysql.byungsoo.net/pub/mysql/
source]# wget http://mirror.apache-kr.org/httpd/httpd-2.2.11.tar.gz
source]# wget http://www.php.net/get/php-5.2.9.tar.gz/from/kr.php.net/mirror/
-- GD관련
source]# wget http://www.zlib.net/zlib-1.2.3.tar.gz
source]# wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.35.tar.gz
source]# wget ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz (Or http://www.ijg.org/files/jpegsrc.v6b.tar.gz)
source]# wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
-- freetype 관련
# wget http://downloads.sourceforge.net/freetype/freetype-2.3.9.tar.bz2?use_mirror=jaist
--> source_Dir는 소스를 받아놓은 디렉토리를 말함.
2. MySQL 설치 시작.
# cd source_Dir
# tar -zxvf mysql-5.0.67.tar.gz
# cd ./mysql-5.0.67/
# groupadd mysql
# useradd -g mysql mysql
# ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --with-client-Idflags=-all-static --with-mysqld-Idflags=-all-static --with-charset=euckr --without-debug --enable-assembler --with-mysqld-user=mysql --with-extra-charsets=all --without-bench
# make
# make install
---> 에러시 yum install xen* -y 후에 다시 configure
# cd /usr/local
# chown root -R /usr/local/mysql
# chown mysql -R /usr/local/mysql/data
# chgrp mysql -R /usr/local/mysql
# find / -name my-huge.cnf // 설정파일 찾아서 카피
# cp /PATH/my-huge.cnf /etc/my.cnf (# cp /usr/local/mysql/share/mysql/my-huge.cnf my.cnf)
------ my.conf 수정 시작 ----
[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-locking
key_buffer = 384M
#max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size = 32M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8
max_allowed_packet = 10M
max_connections = 1024
wait_timeout = 120
language = /usr/local/mysql/share/mysql/korean/
log_slow_queries = ON
log-slow-queries = /usr/local/mysql/slow-query.log
long_query_time = 3
skip-name-resolve
skip-innodb
connect_timeout = 10
max_connect_errors = 2048
------ my.conf 수정 시작 ----
# /usr/local/mysql/bin/mysql_install_db --user=mysql
#######################################################################
a. mysql deamon의 경로 설정. vi editor 사용
#vi ~/.bash_profile
-> PATH=$PATH:$HOME/bin:/usr/local/mysql/bin 추가..
b. 라이브러리들을 등록
#vi /etc/ld.so.conf
->/usr/local/mysql/lib/mysql 추가
#ldconfig 실행
#######################################################################
# cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld
# cd /etc/rc.d/init.d
# chmod 755 mysqld
# /etc/rc.d/init.d/mysqld start
---root password 설정
# /usr/local/mysql/bin/mysqladmin -u root password 'new-password'
3. 아파치 설치 시작
# cd source_Dir
# tar xvfpz httpd-2.2.11.tar.gz
# ./configure --prefix=/usr/local/apache --enable-mods-shared=all --with-mpm=worker --enable-ssl --with-ssl --enable-so
# make
# make install
1) Apache 환경설정파일
/usr/local/apache/conf/httpd.conf 파일을 열어 환경에 맞게 수정
-->AddType application/x-httpd-php .html .php3 .php4 .inc .php .ph .htm .phtml 추가
4. php 설치 시작
(#yum install *devel *lib libjpeg* libpng* freetype* gd* libxml* 으로 설치하였는데 제대로 안 된듯 함)
1) zlib 설치
# cd source_Dir
# tar xvfpz zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure
# make
# make test
# make install
2) libpng 설치
# cd source_Dir
# tar xvfpz libpng-1.2.35.tar.gz
# cd libpng-1.2.35
# cp ./scripts/makefile.linux ./makefile
# make test
# make install
3) jpegsrc 설치
# cd source_Dir
# tar xvfpz jpegsrc.v6b.tar.gz
# cd jpeg-6b/
# ./configure --enable-shared --enable-satatic
# make
# make test
# mkdir /usr/local/man/man1
# make install
# cd SourceDir
# tar xvfpz php-5.2.9.tar.gz
# cd php-5.2.9
rpm -qa | grep libjpeg 확인
..libjpeg 와 libjpeg-devel두개가 다 있어야 한다. (PHP설치시 에러가 남)
libjpeg-devel 없을경우 http://vault.centos.org 에서 libjpeg-devel rpm 다운로드
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/libjpeg-devel-6b-33.i386.rpm
4) Freetype Library 설치
# cd source_Dir
# tar xvfpj freetype-2.3.9.tar.bz2 (zip은 z로 bz2 는 j 옵션으로 푸는군요..음..)
# cd freetype-2.3.9
# ./configure --prefix=/usr/local/freetype
# make
# make install
5) GD 설치
# cd source_Dir
# tar xvfpz gd-2.0.35.tar.gz
# cd gd-2.0.35
# ./configure
# make
--> configure.ac:64: error: possibly undefined macro: AM_ICONV 에러발생
# make (에러 발생시 make 한번더 실행)
# make install
# cp libgd.a /usr/local/lib/
# cp *.h /usr/local/include
: 위에서 include 디렉토리가 없는 경우 mkdir로 만들어 준 후 실행
---------------------------------------------------------------------
gd-2.0.28 GIF 라이센스 풀림.
이버전과 함께 php 4.3.9 버전을 사용하시면 됩니다
---------------------------------------------------------------------
6) php 설치
# cd source_Dir
# xvfpz php-5.2.9.tar.gz
# tar xvfpz httpd-2.2.11.tar.gz
# cd xvfpz httpd-2.2.11
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-kerberos --with-imap-ssl --disable-debug --enable-calendar --with-regex=php --with-iconv-dir --with-gdbm --with-gd --with-imap --with-jpeg-dir --with-png-dir --with-libxml-dir --with-freetype-dir --with-zlib --enable-mbstring=all --enable-mbregex --enable-sigchild --enable-ftp --enable-dba --enable-sockets --enable-inline-optimization --enable-magic-quotes --enable-sysvsem --enable-sysvshm --enable-zend-multibyte --enable-mod-charset --enable-safe-mode
--> configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.
==> # yum -y install ux-imap* 후 다시 소스압축풀고 configure
--> configure: error:Cannot find OpenSSL's <evp.h>
==> # yum -y install openssl-devel 후 다시 소스압축풀고 configure
# cd ..
# rm -rf xvfpz httpd-2.2.11
# xvfpz php-5.2.9.tar.gz
# tar xvfpz httpd-2.2.11.tar.gz
# cd xvfpz httpd-2.2.11
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-kerberos --with-imap-ssl --disable-debug --enable-calendar --with-regex=php --with-iconv-dir --with-gdbm --with-gd --with-imap --with-jpeg-dir --with-png-dir --with-libxml-dir --with-freetype-dir --with-zlib --enable-mbstring=all --enable-mbregex --enable-sigchild --enable-ftp --enable-dba --enable-sockets --enable-inline-optimization --enable-magic-quotes --enable-sysvsem --enable-sysvshm --enable-zend-multibyte --enable-mod-charset --enable-safe-mode
# make
# make install
(1) PHP 환경설정파일
------------------------------------------------------------------
/etc/php.ini 파일을 열어 자기 환경에 맞게 수정
1) session.auto_start = 1
2) allow_url_fopen = Off : 'on'에서 'off'로 수정 <- 이하 웹변조 해킹 방지 관련설정임
3) register_globals = On : Off로 설정하는 것이 안전하나 게시판 및 기타 프로그램에 많은 영향.
4) display_errors = Off : 에러메시지 안 나타나게 함.
5) display_startup_error = Off
--> 기타는 알아서...
5. Apache 구동
#cd /usr/local/apache/bin
#apachectl start
--> [Wed Apr 01 17:57:41 2009] [alert] (EAI 2)Name or service not known: mod_unique_id: unable to find IPv4 address of "서버이름" Configuration Failed
==> vi /etc/hosts 에 "Ip 서버이름" 추가
6. 설치 환경 보기
Apache에서 Document Root로 설정한 디렉토리(홈페이지 루트)로
이동하여 다음과 같은 test.php파일을 만들어 테스트 해 봅니다.
<?
phpinfo();
?>
홈페이지에서 test.php를 열었을 경우
다음과 같은 내용이 포함됩니다.
1) php.ini 파일 확인
phpinfo(); 에서 아래의 경로 확인 후 php.ini 파일 확인
- Configuration File (php.ini) Path /usr/local/php/lib
- Loaded Configuration File none
----> 위와같이 php.ini 이 로드가 안된 경우
# cd /usr/local/php/lib (Configuration File (php.ini) Path)
# ln -s /etc/php.ini php.ini
2) GD 확인
GD Support enabled
GD Version between 1.3 and 1.6.1
GIF Support enabled
위의 것이 나타나면 이번에는 다음과 같은 gd.php 파일을 만들어
테스트 해봅니다.
<?
Header("Content-type : image/gif");
$im = ImageCreate(100,100);
ImageGif($im);
?>
위의 파일을 실행하면 직사각형 그림이 나옵니다.
여기까지 되시면
APM + GD 설치가 성공적으로 되었겠지요.
7. netpbm 설치
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/netpbm-10.25-2.EL4.3.i386.rpm
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/netpbm-devel-10.25-2.EL4.3.i386.rpm
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/netpbm-progs-10.25-2.EL4.3.i386.rpm
######
소스다운로드
http://jjjboard.com/pds/AMP_source.zip
+++++++++++++++++++++++++++++++++++++++++++++++++
2009.04.02 설치테스트 완료
# cat /proc/version (centos 4.X)
--> Linux version 2.6.9-67.0.4.ELsmp (mockbuild@builder6.centos.org) (gcc version 3.4.6 20060404 (Red Hat 3.4.6-9)) #1 SMP Sun Feb 3 07:08:57 EST 2008
+++++++++++++++++++++++++++++++++++++++++++++++++
1. 프로그램 준비
1) 구버전 제거
# rpm -qa http php mysql
# yum remove httpd php mysql -y
2) 라이브러리 및 컴파일소스의 획득.
APM을 설치하기 위해 필요한 컴파일 소스 및 라이브러리를 획득하자.
#yum install gcc* cpp* compat* flex* -y
3) 프로그램 소스 준비.
source]# wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.32.tar.gz/from/ftp://mysql.byungsoo.net/pub/mysql/
source]# wget http://mirror.apache-kr.org/httpd/httpd-2.2.11.tar.gz
source]# wget http://www.php.net/get/php-5.2.9.tar.gz/from/kr.php.net/mirror/
-- GD관련
source]# wget http://www.zlib.net/zlib-1.2.3.tar.gz
source]# wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.35.tar.gz
source]# wget ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz (Or http://www.ijg.org/files/jpegsrc.v6b.tar.gz)
source]# wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
-- freetype 관련
# wget http://downloads.sourceforge.net/freetype/freetype-2.3.9.tar.bz2?use_mirror=jaist
--> source_Dir는 소스를 받아놓은 디렉토리를 말함.
2. MySQL 설치 시작.
# cd source_Dir
# tar -zxvf mysql-5.0.67.tar.gz
# cd ./mysql-5.0.67/
# groupadd mysql
# useradd -g mysql mysql
# ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --with-client-Idflags=-all-static --with-mysqld-Idflags=-all-static --with-charset=euckr --without-debug --enable-assembler --with-mysqld-user=mysql --with-extra-charsets=all --without-bench
# make
# make install
---> 에러시 yum install xen* -y 후에 다시 configure
# cd /usr/local
# chown root -R /usr/local/mysql
# chown mysql -R /usr/local/mysql/data
# chgrp mysql -R /usr/local/mysql
# find / -name my-huge.cnf // 설정파일 찾아서 카피
# cp /PATH/my-huge.cnf /etc/my.cnf (# cp /usr/local/mysql/share/mysql/my-huge.cnf my.cnf)
------ my.conf 수정 시작 ----
[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-locking
key_buffer = 384M
#max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size = 32M
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 8
max_allowed_packet = 10M
max_connections = 1024
wait_timeout = 120
language = /usr/local/mysql/share/mysql/korean/
log_slow_queries = ON
log-slow-queries = /usr/local/mysql/slow-query.log
long_query_time = 3
skip-name-resolve
skip-innodb
connect_timeout = 10
max_connect_errors = 2048
------ my.conf 수정 시작 ----
# /usr/local/mysql/bin/mysql_install_db --user=mysql
#######################################################################
a. mysql deamon의 경로 설정. vi editor 사용
#vi ~/.bash_profile
-> PATH=$PATH:$HOME/bin:/usr/local/mysql/bin 추가..
b. 라이브러리들을 등록
#vi /etc/ld.so.conf
->/usr/local/mysql/lib/mysql 추가
#ldconfig 실행
#######################################################################
# cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld
# cd /etc/rc.d/init.d
# chmod 755 mysqld
# /etc/rc.d/init.d/mysqld start
---root password 설정
# /usr/local/mysql/bin/mysqladmin -u root password 'new-password'
3. 아파치 설치 시작
# cd source_Dir
# tar xvfpz httpd-2.2.11.tar.gz
# ./configure --prefix=/usr/local/apache --enable-mods-shared=all --with-mpm=worker --enable-ssl --with-ssl --enable-so
# make
# make install
1) Apache 환경설정파일
/usr/local/apache/conf/httpd.conf 파일을 열어 환경에 맞게 수정
-->AddType application/x-httpd-php .html .php3 .php4 .inc .php .ph .htm .phtml 추가
4. php 설치 시작
(#yum install *devel *lib libjpeg* libpng* freetype* gd* libxml* 으로 설치하였는데 제대로 안 된듯 함)
1) zlib 설치
# cd source_Dir
# tar xvfpz zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure
# make
# make test
# make install
2) libpng 설치
# cd source_Dir
# tar xvfpz libpng-1.2.35.tar.gz
# cd libpng-1.2.35
# cp ./scripts/makefile.linux ./makefile
# make test
# make install
3) jpegsrc 설치
# cd source_Dir
# tar xvfpz jpegsrc.v6b.tar.gz
# cd jpeg-6b/
# ./configure --enable-shared --enable-satatic
# make
# make test
# mkdir /usr/local/man/man1
# make install
# cd SourceDir
# tar xvfpz php-5.2.9.tar.gz
# cd php-5.2.9
rpm -qa | grep libjpeg 확인
..libjpeg 와 libjpeg-devel두개가 다 있어야 한다. (PHP설치시 에러가 남)
libjpeg-devel 없을경우 http://vault.centos.org 에서 libjpeg-devel rpm 다운로드
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/libjpeg-devel-6b-33.i386.rpm
4) Freetype Library 설치
# cd source_Dir
# tar xvfpj freetype-2.3.9.tar.bz2 (zip은 z로 bz2 는 j 옵션으로 푸는군요..음..)
# cd freetype-2.3.9
# ./configure --prefix=/usr/local/freetype
# make
# make install
5) GD 설치
# cd source_Dir
# tar xvfpz gd-2.0.35.tar.gz
# cd gd-2.0.35
# ./configure
# make
--> configure.ac:64: error: possibly undefined macro: AM_ICONV 에러발생
# make (에러 발생시 make 한번더 실행)
# make install
# cp libgd.a /usr/local/lib/
# cp *.h /usr/local/include
: 위에서 include 디렉토리가 없는 경우 mkdir로 만들어 준 후 실행
---------------------------------------------------------------------
gd-2.0.28 GIF 라이센스 풀림.
이버전과 함께 php 4.3.9 버전을 사용하시면 됩니다
---------------------------------------------------------------------
6) php 설치
# cd source_Dir
# xvfpz php-5.2.9.tar.gz
# tar xvfpz httpd-2.2.11.tar.gz
# cd xvfpz httpd-2.2.11
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-kerberos --with-imap-ssl --disable-debug --enable-calendar --with-regex=php --with-iconv-dir --with-gdbm --with-gd --with-imap --with-jpeg-dir --with-png-dir --with-libxml-dir --with-freetype-dir --with-zlib --enable-mbstring=all --enable-mbregex --enable-sigchild --enable-ftp --enable-dba --enable-sockets --enable-inline-optimization --enable-magic-quotes --enable-sysvsem --enable-sysvshm --enable-zend-multibyte --enable-mod-charset --enable-safe-mode
--> configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.
==> # yum -y install ux-imap* 후 다시 소스압축풀고 configure
--> configure: error:Cannot find OpenSSL's <evp.h>
==> # yum -y install openssl-devel 후 다시 소스압축풀고 configure
# cd ..
# rm -rf xvfpz httpd-2.2.11
# xvfpz php-5.2.9.tar.gz
# tar xvfpz httpd-2.2.11.tar.gz
# cd xvfpz httpd-2.2.11
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-kerberos --with-imap-ssl --disable-debug --enable-calendar --with-regex=php --with-iconv-dir --with-gdbm --with-gd --with-imap --with-jpeg-dir --with-png-dir --with-libxml-dir --with-freetype-dir --with-zlib --enable-mbstring=all --enable-mbregex --enable-sigchild --enable-ftp --enable-dba --enable-sockets --enable-inline-optimization --enable-magic-quotes --enable-sysvsem --enable-sysvshm --enable-zend-multibyte --enable-mod-charset --enable-safe-mode
# make
# make install
(1) PHP 환경설정파일
------------------------------------------------------------------
/etc/php.ini 파일을 열어 자기 환경에 맞게 수정
1) session.auto_start = 1
2) allow_url_fopen = Off : 'on'에서 'off'로 수정 <- 이하 웹변조 해킹 방지 관련설정임
3) register_globals = On : Off로 설정하는 것이 안전하나 게시판 및 기타 프로그램에 많은 영향.
4) display_errors = Off : 에러메시지 안 나타나게 함.
5) display_startup_error = Off
--> 기타는 알아서...
5. Apache 구동
#cd /usr/local/apache/bin
#apachectl start
--> [Wed Apr 01 17:57:41 2009] [alert] (EAI 2)Name or service not known: mod_unique_id: unable to find IPv4 address of "서버이름" Configuration Failed
==> vi /etc/hosts 에 "Ip 서버이름" 추가
6. 설치 환경 보기
Apache에서 Document Root로 설정한 디렉토리(홈페이지 루트)로
이동하여 다음과 같은 test.php파일을 만들어 테스트 해 봅니다.
<?
phpinfo();
?>
홈페이지에서 test.php를 열었을 경우
다음과 같은 내용이 포함됩니다.
1) php.ini 파일 확인
phpinfo(); 에서 아래의 경로 확인 후 php.ini 파일 확인
- Configuration File (php.ini) Path /usr/local/php/lib
- Loaded Configuration File none
----> 위와같이 php.ini 이 로드가 안된 경우
# cd /usr/local/php/lib (Configuration File (php.ini) Path)
# ln -s /etc/php.ini php.ini
2) GD 확인
GD Support enabled
GD Version between 1.3 and 1.6.1
GIF Support enabled
위의 것이 나타나면 이번에는 다음과 같은 gd.php 파일을 만들어
테스트 해봅니다.
<?
Header("Content-type : image/gif");
$im = ImageCreate(100,100);
ImageGif($im);
?>
위의 파일을 실행하면 직사각형 그림이 나옵니다.
여기까지 되시면
APM + GD 설치가 성공적으로 되었겠지요.
7. netpbm 설치
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/netpbm-10.25-2.EL4.3.i386.rpm
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/netpbm-devel-10.25-2.EL4.3.i386.rpm
# rpm -Uvh http://vault.centos.org/4.4/os/i386/CentOS/RPMS/netpbm-progs-10.25-2.EL4.3.i386.rpm
######
소스다운로드
http://jjjboard.com/pds/AMP_source.zip
- 이전글랜카드 스크립트 21.10.14
- 다음글tar를 사용한 리눅스 백업 21.02.10
댓글목록
등록된 댓글이 없습니다.