GGYU
필수라이브러리및 아파치 설치 본문
태스트 환경1 :
운영체제 : Centos 5.3(32bit)
CPU : AMD Athlon 64 x2 3600
RAM : 2GB
태스트 환경2 :
운영체제 : Ubuntu 9.04(64bit)
CPU : Atom 230 x2
RAM : 1GB
필수 사용 라이브러리 :
라이브러리 설치
# wget ftp://ftp.cwru.edu/pub/bash/readline-5.2.tar.gz
# tar xvzf readline-5.2.tar.gz
# cd readline-5.2
# .configure –enable-multibyte
# make
# make install
readline-5.2.tar.gz |
2. expat 설치 ( fontconfig 의존성 라이브러리 )
( http://sourceforge.net/projects/expat )
# wget http://downloads.sourceforge.net/project/expat/expat/2.0.1/expat-2.0.1.tar.gz
# tar xzvf expat-2.0.1.tar.gz
# cd expat-2.0.1
# ./configure
# make && make install
3. Freetype 설치(Dr.Kiraz 님 제보 - 2009. 10. 4)
# wget http://nchc.dl.sourceforge.net/sourceforge/freetype/freetype-2.3.8.tar.gz
# tar xvzf freetype-2.3.8.tar.gz
# cd freetype-2.3.8
# ./configure
# make
# make install
freetype-2.3.8.tar.gz |
4. libxml2 설치
# wget ftp://xmlsoft.org/libxml2/libxml2-2.7.3.tar.gz
# tar xvzf libxml2-2.7.3.tar.gz
# cd libxml2-2.7.3
# ./configure \
--with-html --with-http --with-pattern --with-push --with-reader \
--with-regexps --with-threads --with-writer --with-modules \
--with-zlib=/usr/local/include --with-iconv=/usr/local/include
# make && make install
libxml2-2.7.3.tar.gz |
5. zlib 설치
# wget http://www.zlib.net/zlib-1.2.3.tar.gz
# tar xvzf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure –s
# make
# make install
zlib-1.2.3.tar.tar |
6. libiconv 설치
# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.12.tar.gz
# tar xvzf libiconv-1.12.tar.gz
# cd libiconv-1.12
# ./configure --prefix=/usr/local
# make
# make install
libiconv-1.12.tar.tar |
7. fontconfig 설치 ( XML 폰트 패턴중 알맞는 폰트를 사용자에게 보여주는.. )
( http://fontconfig.org/release )
# wget http://fontconfig.org/release/fontconfig-2.7.3.tar.gz
# tar xzvf fontconfig-2.7.3.tar.gz
# cd fontconfig-2.7.3
# ./configure --with-expat=/usr/local/include
# make && make install
8. GD 설치
# wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
# tar xvzf gd-2.0.35.tar.gz
# cd gd-2.0.35
# ./configure
# make
# make install
gd-2.0.35.tar.gz |
9. Curl 설치
# wget http://curl.haxx.se/download/curl-7.19.4.tar.gz
# tar xvzf curl-7.19.4.tar.gz
# cd curl-7.19.4
# ./configure
# make
# make install
curl-7.19.4.tar.gz |
10. JPEG 설치
# wget http://www.ijg.org/files/jpegsrc.v7.tar.gz
# tar xvzf jpegsrc.v7.tar.gz
# cd jpegsrc.v6b.tar.gz
# ./configure
# make
# make install
jpegsrc.v7.tar.gz |
11. libpng 설치
# wget http://jaist.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.35.tar.gz
# tar xvzf libpng-1.2.35.tar.gz
# cd libpng-1.2.35
# ./configure
# make
# make install
libpng-1.2.35.tar.gz |
Libmcrypt(암호화 라이브러리)
더보기
다운받기 : http://jaist.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz
파일 첨부 :
libmcrypt-2.5.8.tar.gz |
wget http://jaist.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz
tar xvfz libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8(압축 풀린 폴더)
./configure \
--enable-rule=SHARED_CORE --prefix=/usr/local/
make && make install
다운로드를 받을만한 위치로 이동합니다.
더보기
다운로드 받기 :
ftp://ftp.neowiz.com/pub/mysql/Downloads/MySQL-5.1/
ftp://ftp.neowiz.com/pub/apache/httpd/httpd-2.2.11.tar.gz
ftp://ftp.neowiz.com/pub/languages/php/
미러링 서버 제공 : 네오위즈
wget ftp://ftp.neowiz.com/pub/mysql/Downloads/MySQL-5.1 (MySQL 5.1.35) 다운로드
tar xvzf mysql-5.1.35.tar.gz (압축 풀기)
wget ftp://ftp.neowiz.com/pub/apache/httpd/httpd-2.2.11.tar.gz (Apache 2.2.11) 다운로드
tar xvzf httpd-2.2.11.tar.gz (압축 풀기)
wget ftp://ftp.neowiz.com/pub/languages/php/ (Php-5.2.10) 다운로드
tar xvzf php-5.2.10.tar.gz (압축 풀기)
MySQL 설치하기
설치하기
useradd -M -s /bin/false mysql
cd /usr/local/src/mysql-5.1.35
./configure --prefix=/usr/local/mysql --without-readline --enable-thread-safe-client --with-charset=utf8 --with-extra-charsets=ucs2,euckr CFLAGS="-I/usr/local/include" CXXFLAGS="-I/usr/local/include"
make
make install
사용자 등록
groupadd mysql
useradd -d /home/mysql -g mysql –s /bin/false mysql
환경파일 복사
cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
DB 생성
/usr/local/mysql/bin/mysql_install_db
chown -R mysql:mysql /usr/local/mysql/var
실행 스크립트 생성
cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
계정 생성
/usr/local/mysql/share/mysql/mysql.server start
/usr/local/mysql/bin/mysqladmin –u root -p ‘new-password’
Apache 설치하기
압축 풀어서 생긴(httpd-2.x.xx) 폴더로 이동합니다.
cd /usr/local/src/httpd-2.2.11
설치 파일을 위한 환경 설정하기.
./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-so --enable-ssl --enable-modules=ssl --enable-rewrite --with-mpm=prefork
설치
make && make install
서비스 등록
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
vi /etc/init.d/httpd
httpd.conf 설정
ServerName www.example.com:80
주석 풀어주시고 환경에 맞는 주소를 입력해주세요.
PHP 설치하기
압축 풀어서 생긴(php-5.x.x) 폴더로 이동합니다.
cd /usr/local/src/php-5.3.xx
설치를 위한 환경 설정
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-iconv=/usr/local --with-libxml-dir=/usr/local/lib --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-zlib-dir=/usr/local --with-freetype-dir=/usr/local --with-curl --enable-mbstring --enable-mbregex --enable-dbase --enable-sigchild --enable-gd-native-ttf --enable-wddx --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-soap --enable-ftp --enable-safe-mode --enable-exif --enable-bcmath --enable-exif --with-gd --with-ttf --with-gettext --enable-sigchild --enable-mbstring --with-openssl --with-imap --with-imap-ssl --with-kerberos --with-mcrypt=/usr/local
설치
make && make install
PHP 환경 설정 복사하기 (/etc/)
cp php.ini-production /usr/local/apache2/conf/php.ini (Php 5.3)
PHP 설치 : ./configure 중 libiconv.so.2 - 해결방법 보기
문제
Sorry, I cannot run apxs. Possible reasons follow:
1. Perl is not installed
2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs
3. Apache was not built using --enable-so (the apxs usage page is displayed)The output of /opt/modules/apache2/bin/apxs follows:
/opt/modules/apache2/bin/httpd: error while loading shared libraries:libiconv.so.2: cannot open shared object file: No such file or directory
apxs:Error: Sorry, no shared object support for Apache.
apxs:Error: available under your platform. Make sure.
apxs:Error: the Apache module mod_so is compiled into.
apxs:Error: your server binary `/opt/modules/apache2/bin/httpd'..
configure: error: Aborting
해결 방법
# ln -s /usr/local/lib/libiconv.so.2 /usr/lib/
다시 configure 실행
php컴파일 후 /usr/bin/ld:cannot find-lltdl에러 - 해결방법
libmcrypt-2.x.x/libltd 폴더로 이동한다.
# ./configure --enable-ltdl-install
# make
# make install
php-5.x.x 폴더로 이동한다.
# make clean
다시 컴파일 한다.
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-iconv=/usr/local --with-libxml-dir=/usr/local/xml --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-zlib-dir=/usr/local --with-freetype-dir=/usr/local --with-curl --enable-mbstring --enable-mbregex --enable-dbase --enable-sigchild --enable-gd-native-ttf --enable-wddx --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-soap --enable-ftp --enable-safe-mode --enable-exif --enable-bcmath --enable-exif --with-gd --with-ttf --with-gettext --enable-sigchild --enable-mbstring --with-openssl --with-imap --with-imap-ssl --with-kerberos --with-mcrypt=/usr/local
# make
# make install
Zend Optimizer 설치
(압축 풀기 및 폴더 이동)
cd /usr/local/src
wget ZendOptimizer 다운로드 주소 입력
첨부 파일
ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz |
tar xvzf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
cd ZendOptimizer-3.3.3-linux-glibc23-i386
설치 시작
./install.sh
Install 스크립트
- 자동으로 설치함
- 설치 중 php.ini 경로 입력 : /usr/local/php/lib
- 설치 중 Apache Control Utility 경로 입력 : /usr/local/apache2/bin/apachectl
Zend Optimizer 제거
- /usr/local/php/lib/php.ini-zend_optimizer.bak 을 php.ini로 바꿈
Apache2 서버의 libphp5.so 모듈과 libxml2 모듈에 관한 오류 - 해결 방법
오류1.
apache2: Syntax error on line 185 of /etc/apache2/apache2.conf: Syntax error on line 1 of
/etc/apache2/mods-enabled/php5.load: Cannot load /usr/lib/apache2/modules
/libphp5.so into server:
/usr/lib/libxml2.so.2: undefined symbol: gzopen64
해결 방법
# vim /etc/ld.so.conf.d/libc.conf
# libc default configuration
/usr/local/lib
↓
# libc default configuration
#/usr/local/lib
# /sbin/ldconfig
참고 :
ldconfig는 runtime때 여러 위치에 존재하는 shared object, 쉽게말해 동적 라이브러리를 연결해주는 dynamic linker의 설정프로그램이라고 보시면 됩니다. 여기서 runtime dynamic linker는 /lib/ld.so 를 말하는 겁니다.
어떤 shared object가 필요한지는 실행파일이 말해줍니다.
아파치 재시작
# /etc/init.d/httpd reload
오류2.
httpd: Syntax error on line 53 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules cannot restore segment prot after reloc: Permission denied
해결책2
# restorecon -R -v /usr/local/apache2/modules
안될 경우
# cd /usr/local/apache2/modules
# restorecon -v libphp5.so
# chcon -t texrel_shlib_t libphp5.so
버그로 인해 해결이 되지 않는 경우
* 해당 오류가 발생하는 라이브러리를 옵션에서 제거하고 컴파일한다.
* PHP 5.3 이하 버전에서 주로 발생.
Apache 서버와 연동하기
vi /usr/local/apache/conf/httpd.conf
/usr/local/apache2/conf/httpd.conf 파일 수정
# 기본 인덱스 파일 지정
<IfModule dir_module>
DirectoryIndex index.htm index.html index.php
</IfModule>
# PHP 를 사용하기 위한 옵션 추가
<IfModule mod_php3.c>
AddType application/x-httpd-php3 .php3 .htm .html
AddType application/x-httpd-php3-source .php3s
</IfModule>
<IfModule mod_php4.c>
AddType application/x-httpd-php .php .htm .html
AddType application/x-httpd-php-source .phps
</IfModule>
<IfModule mod_php5.c>
AddType application/x-httpd-php .php .htm .html
AddType application/x-httpd-php-source .phps
</IfModule>
해당 버전에 맞는 것을 입력.
ServerName 수정
ServerName 192.168.0.1 처럼 IP를 지정하거나 도메인 지정
Include 주석 해제
가장 하단부에 각 설정이 구분된 Include 설정이 있다. 필요한 설정 부분 주석을 해제한다.
# Server-pool management (MPM specific)
Include conf/extra/httpd-mpm.conf# Multi-language error messages
Include conf/extra/httpd-multilang-errordoc.conf# Fancy directory listings
Include conf/extra/httpd-autoindex.conf# Language settings
Include conf/extra/httpd-languages.conf# User home directories
Include conf/extra/httpd-userdir.conf# Real-time info on requests and configuration
Include conf/extra/httpd-info.conf# Virtual hosts
Include conf/extra/httpd-vhosts.conf# Local access to the Apache HTTP Server Manual
Include conf/extra/httpd-manual.conf# Distributed authoring and versioning (WebDAV)
Include conf/extra/httpd-dav.conf# Various default settings
Include conf/extra/httpd-default.conf# Secure (SSL/TLS) connections
#Include conf/extra/httpd-ssl.conf
서비스 재시작(웹서버 재시작)
service httpd restart
태스트 하기(PHP 연동여부 확인)
echo '<?php phpinfo() ?>' > /usr/local/apache2/htdocs/phpinfo.php
(기타 라이브러리 재 연동)
/usr/local/php/bin/pear upgrade-all
/usr/local/php/bin/pear install DB File Mail Mail_Mime
/usr/local/php/bin/pear install MDB2 MDB2_Driver_mysql MDB2_Driver_mysqli
/usr/local/php/bin/pear install HTTP_Request XML_RPC
오류나 좋은 제안이 있으시면 댓글로 남겨주세요.
최종 수정 : 2009년 9월 22일
'I.F. > linux' 카테고리의 다른 글
ubuntu 16.04 bonding balance-alb모드가 안될때 (0) | 2017.06.22 |
---|---|
nginx mingw 32bit용 빌드시 주의사항 (0) | 2017.06.21 |
nginx mingw build 시 config설정(64bit) (0) | 2017.06.21 |
커널컴파일,모듈프로그램,시스템콜 (0) | 2010.12.18 |
레드헷9 설치후 해야할일 (0) | 2010.01.12 |