标签:php
编译安装php5.6.21. 前期准备工作
php相关: libiconv, mhash, mcrypt, libmcrypt, memcache, ImageMagick, imagick
# mkdir /home/download && cd /home/download
# yum install gcc pcre pcre-devel gcc-c++ autoconf libxml2 libxml2-devel zlib zlib-devel glibc libjpeg libjpeg-devel libpng libpng-devel glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel openssl openssl-devel openldap openldap-devel openldap-clients openldap-servers freetype freetype-devel
【libiconv】
下载LIBICONV 1.14 并安装
Libiconv URL: http://ftp.gnu.org/pub/gnu/libiconv/
# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
# tar zxvf libiconv-1.14.tar.gz && cd libiconv-1.14
# ./configure --prefix=/usr/local && make && make install
# cd ..
【mhash】
下载 MHASH 0.9.9.9 并安装
URl: http://sourceforge.net/projects/mhash/
# wget http://downloads.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.bz2
# tar jxvf mhash-0.9.9.9.tar.bz2 && cd mhash-0.9.9.9
# ./configure && make && make install
# /sbin/ldconfig
# cd ..
【libmcrypt】
下载 LIBMCRYPT 2.5.8 并安装
URL: http://sourceforge.net/projects/mcrypt/files/Libmcrypt/
# wget http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
# tar zxf libmcrypt-2.5.8.tar.gz && cd libmcrypt-2.5.8
# ./configure && make && make install
# /sbin/ldconfig
# cd libltdl/
# ./configure --enable-ltdl-install && make && make install
# cd ../../
创建系统软连接
# ln -s /usr/local/lib/libmcrypt.* /usr/lib/
# ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
# ln -s /usr/local/lib/libmhash.* /usr/lib/
【mcrypt】
下载 MCRYPT 2.6.8 并安装
myrypt URL: http://sourceforge.net/projects/mcrypt/?source=dlpaz
# wget http://sourceforge.net/projects/mcrypt/files/latest/download?source=dlpaz -O mcrypt-2.6.8.tar.gz
# tar zxf mcrypt-2.6.8.tar.gz && cd mcrypt-2.6.8
# ./configure && make && make install
# /sbin/ldconfig
# cd ..
2. 编译安装php
# wget http://php.net/get/php-5.6.2.tar.gz/from/this/mirror -O php-5.6.2.tar.gz
# tar zxvf php-5.6.2.tar.gz && cd php-5.6.2
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-pdo-sqlite --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql-sock --with-mcrypt --with-mhash --with-iconv-dir=/usr/local --with-gd --with-gettext --with-freetype-dir --with-jpeg-dir --with-png-dir --with-libxml-dir=/usr --with-curl --with-xmlrpc --with-zlib --with-pear --with-openssl --with-libdir --with-kerberos --enable-cgi --enable-fpm --enable-pdo --enable-opcache --enable-mbstring --enable-gd-native-ttf --enable-xml --enable-exif --enable-zip --enable-soap --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-shmop --enable-json --enable-bcmath --enable-calendar --enable-ftp --enable-inline-optimization --enable-pcntl --enable-mbregex --disable-rpath
# make ZEND_EXTRA_LIBS=‘-liconv‘
# make install
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod +x /etc/init.d/php-fpm
# chkconfig php-fpm on
# ln -s /usr/local/php/bin/* /usr/bin/
# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# cp php.ini-production /usr/local/php/etc/php.ini
# cd ..
3. 插件和对应的服务的安装
【memcached】
# yum install memcached
# echo "/usr/bin/memcached -d -m 512 -l localhost -u root" >> /etc/rc.local
# memcached -d -m 512 -l localhost -u root
============ php插件memcache
# wget http://pecl.php.net/get/memcache -O memcache-3.0.8.tar.gz
# tar zxvf memcache-3.0.8.tar.gz && cd memcache-3.0.8/
# /usr/local/php/bin/phpize
# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config
# make && make install
# cd ..
【ImageMagick】
# yum install ImageMagick-devel
============ php插件imagick
# wget http://pecl.php.net/get/imagick -O imagick.tar.gz
# tar zxvf imagick.tar.gz && cd imagick-3.3.0RC1/
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make && make install
# cd ..
【gearmand】
安装gearmand
# yum -y install boost-devel
# wget https://launchpad.net/gearmand/1.0/1.0.6/+download/gearmand-1.0.6.tar.gz
# tar zxvf gearmand-1.0.6.tar.gz && cd gearmand-1.0.6
# ./configure
# make && make install
# cd ..
启动:
# mkdir -p /usr/local/var/log
# gearmand -L 127.0.0.1 -d
# echo "/usr/local/sbin/gearmand -L 127.0.0.1 -d" >> /etc/rc.local
============ php插件gearman
# wget http://pecl.php.net/get/gearman-0.8.0.tgz
# tar zxvf gearman-0.8.0.tgz && cd gearman-0.8.0
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make && make install
# cd ..
4. 配置文件
【php.ini】
# vim /usr/local/php/etc/php.ini
expose_php = Off
max_execution_time = 300
max_input_time = 600
post_max_size = 100M
date.timezone = Asia/Shanghai
增加到文件末尾:
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/"
extension = "memcache.so"
extension = "imagick.so"
extension = "gearman.so"
zend_extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/opcache.so"
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.save_comments=0
opcache.fast_shutdown=1
【php-fpm.conf】
# vim /usr/local/php/etc/php-fpm.conf
user = www
group = www
access.log = /usr/local/php/var/log/$pool.access.log
access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{mili}d %{kilo}M %C%%"
slowlog = /usr/local/php/var/log/$pool.log.slow
service php-fpm start
标签:php
原文:http://nosmoking.blog.51cto.com/3263888/1629891