PHP
Pre_Install
yum -y install libmcrypt-devel libxml2-devel curl-devel libjpeg-devel libpng-devel freetype-devel openssl-devel mhash-devel
Install
wget -cb
./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/etc/php \
""" 优化选项 """
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
""" 启用 opcache,默认为 ZendOptimizer+(ZendOpcache) """
--enable-opcache \
""" FPM """
--enable-fpm \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
""" Mysql"""
--with-mysql=/usr/local/mysql \
--with-mysqli \
--with-pdo-mysql \
""" 扩展 """
--enable-mbstring \
--with-iconv \
--with-mcrypt \
--with-mhash \
--with-openssl \
--enable-bcmath \
--enable-soap \
--with-libxml-dir \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--with-curl \
--with-zlib \
--enable-zip
make && make intall
make clean
配置PHP
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/etc/php/php-fpm.conf
cp /usr/local/src/php-5.6.6/php.ini-development /usr/local/etc/php/php.ini
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
启动PHP-FPM
service php-fpm start
Starting php-fpm done
添加 PHP 命令到环境变量
PATH=$PATH:$HOME/bin
#改为:
PATH=$PATH:$HOME/bin:/usr/local/php56/bin
#使 PHP 环境变量生效:
. ~/.bash_profile
#验证:
php -v
出现的问题
1:
mcrypt.h not found. Please reinstall libmcryp
首先通过yum安装,但是提示不存在
yum install php-mcrypt libmcrypt libmcrypt-devel
后面通过编译安装
cd /usr/local/src
wget http://softlayer.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz
tar -zxvf libmcrypt-2.5.8.tar.gz
cd /usr/local/src/libmcrypt-2.5.8
./configure --prefix=/usr/local
make && make install
2:
error: Don’t know how to define struct flock on this system, set –enable-opcache=no
只把这个/usr/local/lib加入到/etc/ld.so.conf,然后执行ldconfig,使其重新加载一次;
参考链接
http://php.net/manual/zh/configure.about.php
http://blog.csdn.net/ljfrocky/article/details/44302021
http://blog.aboutc.net/linux/65/compile-and-install-php-on-linux
http://www.nginx.cn/231.html