系统环境:CentOS系统,64位
软件版本:php-5.4.14
说明:php解压路径在/app目录下,所有以下操作在/app/php/ 目录下
开始安装:
1. 安装PHP依赖包
# cd /app/php/
# yum -y install gcc gcc-c++autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devellibxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-develkrb5 krb5-devel l ibidn libidn-devel openssl openssl-devel openldapopenldap-devel nss_ldap openldap-clients openldap-servers gd gd-devel
2 安装libiconv
# cd /app/php/
# tar zxvflibiconv-1.14.tar.gz && cd libiconv-1.14 && ./configure--prefix=/usr/local && make && make install
.3 安装libmcrypt
# cd /app/php/
# tar jxvflibmcrypt-2.5.8.tar.bz2 && cd libmcrypt-2.5.8 && ./configure&& make && make install
# /sbin/ldconfig
# cd libltdl/&& ./configure --enable-ltdl-install && make && makeinstall
#/sbin/ldconfig -v
4 安装mhash
# cd /app/php/
# tar jxvfmhash-0.9.9.9.tar.bz2 && cd mhash-0.9.9.9 && ./configure && make && makeinstall
# ln -s/usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
# ln -s/usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
# ln -s/usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
# ln -s /usr/local/lib/libmcrypt.so.4.4.8/usr/lib/libmcrypt.so.4.4.8
# ln -s/usr/local/lib/libmhash.a /usr/lib/libmhash.a
# ln -s/usr/local/lib/libmhash.la /usr/lib/libmhash.la
# ln -s/usr/local/lib/libmhash.so /usr/lib/libmhash.so
# ln -s/usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
# ln -s/usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
# ln -s/usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
5 安装PHP
# cd /app/php/
# tar zxvf php-5.4.14.tar.gz && cd php-5.4.14
#./configure --prefix=/app/php --with-config-file-path=/app/php/etc --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --enable-sysvshm --enable-sysvmsg
# make ZEND_EXTRA_LIBS='-liconv'
# make install
# cp php.ini-production /app/php/etc/php.ini
6 安装ImageMagick
<pre name="code" class="html"># cd /app/php/
# tar jxvf ImageMagick-6.7.2-3.tar.bz2 && cd ImageMagick-6.7.2-3 && ./configure && make && make install
7 安装phpredis
<pre name="code" class="html"># cd /app/php/
# unzip phpredis-master.zip && cd phpredis-master# /app/softlib/php/bin/phpize# ./configure --with-php-config=/app/php/bin/php-config && make && make instal
.8 配置PHP扩展包
# vi /app/php/etc/php.ini
开头添加:
date.timezone = Asia/Shanghai
output_buffering
Default Value: On
Development Value: 4096
Production Value: 4096
再查找; cgi.fix_pathinfo=1
修改为 cgi.fix_pathinfo=0,防止Nginx文件类型错误解析漏洞
其后增加:extension=/app/php/lib/php/extensions/no-debug-non-zts-20121212/redis.so
// 注意:这里的路径每个计算机都不相同, /app/php/为php的安装路径 /lib/php/extensions/ 不修改,no-debug-non-zts-20121212这个文件夹是根据时间创建的,一定要在文档目录中查看它的文件名,在填写。 /redis.so不变# groupadd www
# useradd -g www www
# cd /app/php/etc
# mkdir -p /app/htdocs
# chmod +w /app/htdocs/
# chown -R www. /app/htdocs/
# cp php-fpm.conf.default php-fpm.conf
注意:提前创建一个www用户和一个www用户组。
修改php-fpm.conf文件
# vi php-fpm.conf
修改:
pid =/app/php/var/run/php-fpm.pid
error_log =/app/php/var/log/php-fpm.log
log_level = notice
user = www
group = www
pm.max_children =50
pm.start_servers =20
pm.min_spare_servers= 5
pm.max_spare_servers= 35
# cd /app/php/php-5.4.14/sapi/fpm
# <span style="color:#464646;">cp init.d.php-fpm /etc/init.d/phpfpm</span>
<span style="color:#464646;"></span><p align="left"><span style="color:#464646;"># chmod 755/etc/init.d/phpfpm</span></p><p align="left"><span style="color:#464646;">#/etc/init.d/phpfpm start</span></p><p align="left"><span style="color:#464646;"># ps -ef | grep <span style="color:#464646;">php-fpm</span></span></p>
设置开机启动
# chkconfig phpfpm on
# chkconfig --level 24 phpfpm off
9.安装pcre
# tar zxvf pcre-8.32.tar.gz
# cd pcre-8.32
# ./configure && make && make install
#ln -slibpcre.so.0.0.1 libpcre.so.1
10.安装tengine
在另一篇文章中讲到,不再赘述。
链接:http://blog.youkuaiyun.com/zhao_s/article/details/42454599
11、测试
<span style="font-size:14px;"># vi /app/htdocs/phpinfo.php
<?php
phpinfo();
?>
# chown www. phpinfo.php</span><strong style="font-size: 18px;">
</strong>
在浏览器中输入: localhost/phpinfo.php
显示:
表示安装成功。