PHP5.6编译安装

Azura 649 0

实验环境:腾讯云Centos7.2,php-5.6.9

PHP地址:http://mirrors.sohu.com/php/php-5.6.9.tar.gz

PHP安装目录:/usr/local/php56/

php.ini目录:/usr/local/php56/etc/

一般编译安装几乎都就为三步骤:

1、安装依赖的库软件(也可以提前安装,也可以报错的时候安装,这里我提前全部安装上)

2、下载安装包,make,make install

3、后续的配置文件,变量等一些设置

一、安装php所依赖的一些库和软件

yum install libxml2 libxml2-devel libcurl-devel libjpeg-devel libpng-devel libpng libjpeg gcc openssl-devel bzip2-devel libmcrypt-devel readline-devel -y

PHP5.6编译安装

二、下载php源码包

wget http://mirrors.sohu.com/php/php-5.6.9.tar.gz

PHP5.6编译安装

三、解压安装包进入解压目录和创建一个www的组合用户不允许登录

tar -zxvf php-5.6.9.tar.gz
cd php-5.6.9
groupadd www
useradd -g www -s /sbin/nologin www

PHP5.6编译安装

PHP5.6编译安装

四、预编译(注意如果这里出错请检查解决,是否安装依赖)

./configure --prefix=/usr/local/php56 \
--with-config-file-path=/usr/local/php56/etc \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-opcache \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gettext \
--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 \
--with-bz2 \
--with-readline

PHP5.6编译安装

五、安装(一条命令带过)

make && make install

PHP5.6编译安装

六、配置php.ini(复制源码包下面的php.ini-development到安装目录的etc/为php.ini)

cp php.ini-development /usr/local/php56/etc/php.ini

七、配置php-fpm(这里计划和nginx结合)

cp /usr/local/php56/etc/php-fpm.conf.default /usr/local/php56/etc/php-fpm.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
 
chkconfig --add php-fpm
chkconfig on php-fpm
service php-fpm start

PHP5.6编译安装

八、配置环境变量

vim /etc/profile
PATH=$PATH:/usr/local/php56/bin
export PATH
source /etc/profile

PHP5.6编译安装

PHP5.6编译安装

九、预编译参数详解

php 安装目录
./configure --prefix=/usr/local/php56 \
php.ini配置文件所在目录
--with-config-file-path=/usr/local/php56/etc \
优化线程,关闭调试模式,
--enable-inline-optimization \
--disable-debug \
关闭额外的运行库文件,启用动态库,打开opcache解析器可以直接从共享内存调用字节码
--disable-rpath \
--enable-shared \
--enable-opcache \
开启fpm,fpm所属组和用户为www
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
数据库连接参数
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
国际化与字符编码支持
--with-gettext \
--enable-mbstring \
--with-iconv \
加密算法扩展
--with-mcrypt \
--with-mhash \
--with-openssl \
打开图片大小调整
--enable-bcmath \
http服务soap依赖libxml
--enable-soap \
--with-libxml-dir \
进程扩展,共享内存,系统信号驱动事件
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
打开sockets支持
--enable-sockets \
curl浏览工具的支持,打开zlib库的支持,用于http压缩传输,打开对bz2文件的支持
--with-curl \
--with-zlib \
--enable-zip \
--with-bz2 \
readline库扩展
--with-readline

十、在安装完毕后有人会用到GD库发现未安装(会开始怨了,下篇继续如果在编译时未安装某些扩展如何去添加)

打赏
发表评论
表情 图片 链接 代码

分享
微信
微博
QQ

站点已稳定运行: | 耗时 0.178 秒 | 查询 30 次 | 内存 18.10 MB