본 글은 Centos6.4에서 nginx php를 컴파일하고 설치하는 방법을 주로 소개하고 있으니 필요하신 분들은 참고하시면 됩니다
1. 종속 라이브러리 준비
make 설치 :
yum -y install gcc automake autoconf libtool make
g++ 설치:
yum install gcc gcc-c++
2. pcre 컴파일 및 설치
pcre는 정규 표현식 라이브러리입니다. nginx를 컴파일하려면 이 라이브러리를 사용하여 URL 재작성을 구현해야 합니다.
소스 코드 다운로드
cd /usr/local/src wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.tar.bz2 tar jxvf pcre-8.33.tar.bz2
컴파일 및 설치
cd pcre-8.33 ./configure make make install
zlib 라이브러리 컴파일 및 설치
zlib는 gzip 구현입니다
소스 코드 다운로드
cd /usr/local/src wget //m.sbmmt.com/ tar -zxvf zlib-1.2.8.tar.gz
컴파일 및 설치
cd zlib-1.2.8 ./configure make make install
IV. openssl 설치
ssl이 설치되어 있는지 확인
# rpm -qa|grep openssl openssl-devel-1.0.1e-16.el6_5.14.x86_64 openssl-1.0.1e-16.el6_5.14.x86_64
그렇지 않은 경우 설치됨
소스코드 다운로드
cd /usr/local/src wget //m.sbmmt.com/ tar -zxvf openssl-1.0.1c.tar.gz
컴파일 및 설치
./configure make make install
5. nginx 컴파일 및 설치
cd /usr/local/src wget //m.sbmmt.com/ tar -zxvf nginx-1.2.8.tar.gz cd nginx-1.2.8 ./configure --sbin-path=/usr/local/nginx/nginx \ --conf-path=/usr/local/nginx/nginx.conf \ --pid-path=/usr/local/nginx/nginx.pid \ --with-http_ssl_module \ --with-pcre=/usr/local/src/pcre-8.33 \ --with-zlib=/usr/local/src/zlib-1.2.8 \ --with-openssl=/usr/local/src/openssl-1.0.1c make make install
설치 완료 후 설치 성공 여부 확인
/usr/local/nginx/nginx netstat -alptn|grep 80
6. php 컴파일 및 설치
새 버전의 PHP에는 php-fpm이 통합되었습니다
1. 준비
yum -y install libmcrypt-devel mhash-devel libxslt-devel\ libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel\ zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel\ ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel\ krb5 krb5-devel libidn libidn-devel openssl openssl-devel
2. libmcrypt 컴파일 및 설치
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz tar -zxvf libmcrypt-2.5.7.tar.gz cd libmcrypt-2.5.7 ./configure make make install
3. 코드
wget //m.sbmmt.com/ tar zvxf php-5.4.7.tar.gz
4. cd php-5.4.7
./configure --prefix=/usr/local/php \ --enable-fpm \ --enable-mbstring \ --enable-sockets \ --enable-sysvsem \ --enable-sysvshm \ --enable-pcntl \ --enable-mbregex \ --enable-zip \ --enable-inline-optimization \ --disable-pdo \ --disable-debug \ --disable-rpath \ --with-mcrypt \ --with-zlib \ --with-bz2 \ --with-mhash \ --with-curl \ --with-mysql \ --with-gd \ --with-pcre-regex \ --with-libdir=lib64
컴파일 및 설치 다음 오류가 보고되는 경우
configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no
/etc/ld.so.conf 파일을 수정합니다
vi /etc/ld.so.conf.d/local.conf #添加2行 /usr/local/lib64 //64系统 /usr/local/src/libmcrypt-2.5.7/lib/.libs #执行以下命令 chmod gu+x /etc/ld.so.conf.d/local.conf #执行以下命令使生效 ldconfig -v
명령어 다시 실행
성공 후 컴파일 및 설치
7. 구성 시작
1. >
cd /usr/local/php cp /etc/php-fpm.conf.default /etc/php-fpm.conf vi /etc/php-fpm.conf
user = llong
group = llong
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
<? echo phpinfo(); ?>
/usr/local/php/sbin/php-fpm (手动打补丁的启动方式/usr/local/php/sbin/php-fpm start) /usr/local/nginx/nginx