2016年4月6日 星期三

CentOS 6.7 編譯 php 5.2.17 with php-fpm

今天收到一個特殊需求,需要建立一個和客戶一模一樣的開發環境,仔細查看了一下,使用的是 php 5.2.17

在目前的 CentOS 6.7,yum最低都是 5.3.3 版本了,使用 rpm 安裝 5.2.17 的話 atomic 已經不支援下載了,最好的方式還是採用 compiler 的方式來安裝

 

本篇是記錄 nginx + php5.2.17 + php-fpm5.2.17 的安裝方式

 

由於在嘗試測試需要的相關套件,索性寫成 script 來進行編譯,免得需要加載其他套件時的作業麻煩



 

以下會自動安裝相關需要的套件,以下在自行選用需要的 library
#!/bin/bash 
export ver="5.2.17";

yum install -y wget patch gcc libtool libmcrypt-devel libxml2-devel flex bison make pcre-devel zlib-devel openssl-devel gd-devel libtool-ltdl-devel mysql-devel
cd /usr/local/src/

wget http://museum.php.net/php5/php-5.2.17.tar.gz
wget http://php-fpm.org/downloads/php-5.2.17-fpm-0.5.14.diff.gz
tar -xvf php-$ver.tar.gz
gzip -cd php-$ver-fpm-0.5.14.diff.gz | patch -d php-$ver -p1
cd php-$ver
./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm --enable-cli \
--with-mcrypt \
--with-zlib \
--enable-mbstring \
--with-openssl \
--with-mysql \
--with-mysql-sock \
--with-gd \
--with-jpeg-dir=/usr/lib64 \
--enable-gd-native-ttf \
--without-sqlite \
--with-libdir=lib64 \
--with-xpm-dir=/usr/lib64 \
--enable-gd-jis-conv \
--with-freetype-dir=/usr/include/freetype2 \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-shared \
--with-bz2 \
--with-curl \
--with-gettext \
--with-mhash \
--with-mime-magic \
--with-mysqli \
--with-pdo-mysql \
--without-pdo-sqlite \
--enable-soap \
--enable-sockets \
--with-xmlrpc
make all install
strip /usr/local/php/bin/php-cgi

 

設定 php-fpm.conf,預設為 nobody,改用 nginx 權限啟動
$ vim /usr/local/php/etc/php-fpm.conf 

Unix user of processes
<value name="user">nginx</value>

Unix group of processes
<value name="group">nginx</value>

 

如果你有 php.ini 可以用 -c 引用
$ ./php -c /etc/php.ini 

查看是否引用 php.ini
$ ./php --ini
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)

 

 

 

 

 

 

Orignal From: CentOS 6.7 編譯 php 5.2.17 with php-fpm

沒有留言:

張貼留言