码迷,mamicode.com
首页 > Web开发 > 详细

CentOS下PHP 5.6编译安装

时间:2015-07-03 09:23:56      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:

最近在尝试yii 2.0,我所使用的系统是centos,通过yum安装的php是5.2,而yii2.0至少需要5.4

在网上找了一些安装方式都失败了,包括修改yum的源来更新的方式也不成功,于是只能通过最原始的方式下载源码来编译安装了。

步骤如下

1. 如果要apache支持php,则首先需要安装apache
yum install httpd
之后需要安装
yum install httpd-devel
这样系统上才能安装apxs,后面php要用到
find / -name "apxs" 找一下apxs的位置

2. 安装php

# c和c++编译器
yum install -y gcc gcc-c++
# PHP扩展依赖
yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-devel


去php官网http://php.net/downloads.php 查看所要下载的tar.gz链接

然后使用wget下载最新源码,解压缩,运行configure-make-make install


configure指令
./configure --prefix=/data/soft/php\
 --with-libdir=lib64\
 --enable-fpm\
 --with-fpm-user=php-fpm\
 --with-fpm-group=www\
 --enable-mysqlnd\
 --with-mysql=mysqlnd\
 --with-mysqli=mysqlnd\
 --with-pdo-mysql=mysqlnd\
 --enable-opcache\
 --enable-pcntl\
 --enable-mbstring\
 --enable-soap\
 --enable-zip\
 --enable-calendar\
 --enable-bcmath\
 --enable-exif\
 --enable-ftp\
 --enable-intl\
 --with-openssl\
 --with-zlib\
 --with-curl\
 --with-gd\
 --with-zlib-dir=/usr/lib\
 --with-png-dir=/usr/lib\
 --with-jpeg-dir=/usr/lib\
 --with-gettext\
 --with-mhash\
 --with-ldap\
 --with-apxs2=/usr/local/apache/bin/apxs

注意最后一行指向apxs位置,如果不知道就find / -name "apxs"找一下,这样php在编译之后才会生成libphp5.so供apache调用

第一行是安装位置,我安装到了/data/soft/php目录下,可以自己更改


然后 make&make instgall


编译安装完成之后,需要把安装的etc目录下php-fpm.conf.default配置示例文件拷贝并改名一个作为配置文件

cp /data/soft/php/etc/php-fpm.conf.default /data/soft/php/etc/php-fpm.conf

修改这个文件,找到 user=xxx 和group=xxx 修改为user=root   group=root 这样可以用root来运行
(使用whoami和groups查看当前用户的user和group)

然后再拷贝源码目录下的php.ini-production到php安装目录下的lib下,改名为php.ini为php配置文件(php.ini的默认路径可以通过写一个index.php文件,用phpinfo()来查看)



找到php-fpm  运行  php-fpm -R 这样能以root用户启动

php-fpm关闭时,先用 ps aux|grep php-fpm找到pid
然后  kill -INT php-fpm的pid   即可关闭


然后修改apache的http.conf配置文件
加入
LoadModule php5_module modules/libphp5.so
注意检查一下配置文件里是否已经有了该行,如果重复了会报错。
加入
AddType application/x-httpd-php .php
这样php扩展名的文件才能被apache执行

重启httpd服务
写一个index.php用phpinfo()看看效果,如果一切正常可以看到php信息

CentOS下PHP 5.6编译安装

标签:

原文地址:http://my.oschina.net/u/150705/blog/473836

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!