1、首先配置好编译环境
yum -y update && yum -y upgrade
yum groupinstall "Development Tools"
yum -y install gcc gcc-c++ pcre openssl gd-devel* zlib-devel pcre-devel libxml2-devel curl-devel
下载安装libmcrypt
地址:http://sourceforge.net/projec...
(已下载)

编译安装即可
tar -zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make && make install
编辑 vim /etc/ld.so.conf 末行添加
/usr/local/lib
并执行:ldconfig
编译安装过程
php源码包
wget http://cn2.php.net/distributi...
tar zxvf php-7.0.14.tar.gz -C /usr/src/
cd /usr/src/phpxxxx
编译安装
注意:路径换成自己的。
./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --bindir=/usr/local/php7/bin --sbindir=/usr/local/php7/sbin --includedir=/usr/local/php7/include --libdir=/usr/local/php7/lib/php --mandir=/usr/local/php7/php/man --with-config-file-path=/usr/local/php7/etc --with-MySQL-sock=/tmp/mysql.sock --with-mcrypt=/usr/include --with-mhash --with-openssl --with-mysql=shared,mysqlnd --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --enable-sockets --enable-soap --enable-session --with-curl --enable-opcache --enable-fpm --enable-fastcgi --with-fpm-user=www --with-fpm-group=www --disable-fileinfo
其他模块可以用 ./configure --help 查看configure的正确语法
编译&&安装
make clean && make && make install

设置PHP7的配置文件

cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
启动
/usr/local/php7/sbin/php-fpm
Php-fpm 开机启动

echo “/usr/local/php7/sbin/php-fpm start” >>/etc/rc.local

php源码安装目录在/usr/local/php7

添加PHP环境变量
echo -e '\nexport PATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATH\n' >> /etc/profile && source /etc/profile

查看编译成功后的PHP7安装目录
由于需要和MySQL进行通信,所以需要特别查看PHP7安装后的lib扩展库目录(/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/)。需要确保至少存在mysqli.so、pdo_mysql.so这两个动态库文件,如下图所示。
[root@localhost php-7.0.0]# ls -lrt /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/

php 7 目录
php 7 目录
开始设置PHP7的配置文件php.ini、php-fpm.conf、www.conf和php-fpm脚本
可以用编译后的配置文件复制到PHP7的配置目录(/usr/local/php7/etc/),推荐使用 github中的配置。这个配置来自《PHP7中php.ini、php-fpm和www.conf的配置》

方法一:直接使用编译后未经优化处理的配置

[root@localhost php-7.0.0]# cp php.ini-production /usr/local/php7/etc/php.ini

方法二:使用https://github.com/lizer2014/...文中的配置

[root@localhost php-7.0.0]# mv ~/php.ini /usr/local/php7/etc/php.ini && mv ~/php-fpm /etc/init.d/php-fpm
[root@localhost php-7.0.0]# mv ~/php-fpm.conf /usr/local/php7/etc/php-fpm.conf && mv ~/www.conf /usr/local/php7/etc/php-fpm.d/www.conf
注意:需要修改php.ini配置中的参数,extension_dir改为自己的
extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/"

其中在/etc/init.d/php-fpm中在start函数的守护进程前必须有make /var/run/php-fpm命令,否则重启服务器会导致启动失败,nginx中配置也有这个问题
添加php的环境变量
[root@localhost php-7.0.0]# echo -e 'nexport PATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATHn' >> /etc/profile && source /etc/profile

设置PHP日志目录和php-fpm进程文件(php-fpm.sock)目录
其中,设置php-fpm进程目录的用户和用户组为nginx,并创建php会话session目录

设置PHP日志目录和php-fpm的运行进程ID文件(php-fpm.sock)目录

[root@localhost php-7.0.0]# groupadd -r nginx && useradd -r -g nginx -s /bin/false -M nginx
[root@localhost php-7.0.0]# mkdir -p /var/log/php-fpm/ && mkdir -p /var/run/php-fpm && cd /var/run/ && chown -R nginx:nginx php-fpm

修改session的目录配置

[root@localhost run]# mkdir -p /var/lib/php/session
[root@localhost run]# chown -R nginx:nginx /var/lib/php

设置PHP开机启动以及测试配置文件是否正确

配置开机自启动,增加到主机sysV服务

[root@localhost run]# chmod +x /etc/init.d/php-fpm
[root@localhost run]# chkconfig --add php-fpm
[root@localhost run]# chkconfig php-fpm on

测试PHP的配置文件是否正确合法

[root@localhost run]# php-fpm -t
[05-Dec-2015 17:33:03] NOTICE: configuration file /usr/local/php7/etc/php-fpm.conf test is successful

启动php服务
在完成上面的操作后,就可以正式使用php服务了。启动php进程服务的命令如下:
[root@localhost init.d]# service php-fpm start
Starting php-fpm done
然后可以通过命令ps -aux|grep php查看是否成功(图中的php-fpm进程数和进程用户nginx都是由www.conf中pm.start_servers和user的值分别决定的)

修改Nginx配置,使用PHP7
location / {

        root   /var/www/html/;index  index.html index.htm index.php;}

location ~ .*.(php|php7)?$ {

        root           /var/www/html/;fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  HTTPS   on;fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;include        fastcgi_params;#new lineinclude fastcgi.conf;#                        #                                }

如果出现错误“SQLSTATE[HY000] [2002] No such file or directory”
将localhost改为127.0.0.1
$host = 'localhost';//改为127.0.0.1
$database = 'demo';
$username = 'root';
$password = 'admin';

centos6.5 源码安装php7相关推荐

  1. Ubuntu源码安装php-7.2.23

    1.切换到安装目录,解压 #cd /usr/local/src #tar -zxvf php-7.2.23.tar.gz #cd php-7.2.23 下载链接 :https://www.php.ne ...

  2. nginx1.10.3 php7.0,centos7.2源码安装php7.0.9和nginx1.10.3服务器

    下载nginx-1.10.3.tar.gz,php-7.0.9.tar.gz.也可以去nginx官网,php官网下载想要的版本.我选择nginx1.10.3稳定版和php7.0.9最新版.php源码包 ...

  3. centos编译安装php7_centos7源码安装php7.2

    centos7源码安装方式安装搭建php7.2环境. 一.php7.2源码包官网下载wget -c http://cn2.php.net/distributions/php-7.2.4.tar.gz ...

  4. Centos6.5源码安装MySQL

    CentOS 6.5环境源码安装MySQL 5.6 1.环境准备工作 编写Shell脚本安装环境(development.sh) #!/bin/bash yum install wget -y yum ...

  5. linux源码安装php7.2.0

    1. 源码包下载地址 https://pan.baidu.com/s/1bpi4D9l 2. 解压php压缩包: tar –zxvf php-7.2.0.tar.gz 3. 进入解压后的 cd php ...

  6. centos6.4 源码安装mysql5.5

    2019独角兽企业重金招聘Python工程师标准>>> 安装依赖库 yum install gcc-c++ yum install bison cmake yum install n ...

  7. centos6.5 nginx1.8 php mysql,CentOS6.5 源码安装Nginx1.8 + PHP7.0.6 + MySQL5.7.12

    准备工作 使用yum安装相关依赖 yum install -y gcc gcc-c++ autoconf automake libtool make cmake libjpeg libjpeg-dev ...

  8. centos6.6 源码安装mysql5.5_CentOS6.x下源码安装MySQL5.5

    2. 卸载原有的mysql数据库 [root@zabbix ~]# yum -y remove mysql mysql-server mysql-libs compat-mysql51 [root@z ...

  9. CentOS6.5上源码安装MongoDB3.2.1

    CentOS6.5上源码安装MongoDB3.2.1 [日期:2016-01-27] 来源:Linux社区  作者:darren-lee [字体:大 中 小] 1.环境准备: 1 mkdir /hom ...

最新文章

  1. import csv into iaddressbook
  2. 【组合数学】排列组合 ( 多重集排列 | 多重集全排列 | 多重集非全排列 所有元素重复度大于排列数 | 多重集非全排列 某些元素重复度小于排列数 )
  3. 基于Java的RDMA高性能通信库(一):IBM jVerbs库
  4. Postgresql 物理热备份 -- 快照备份
  5. 为什么要有 hash 和 history
  6. 单片机涡轮流量传感器_迅尔仪表|同是涡轮流量计,为什么液体涡轮流量计不能测气体?...
  7. 微信新表情戒烟了!腾讯:雪茄大佬成了歪嘴战神
  8. 通过注册表修改键盘映射
  9. 学习笔记4--惯性导航及总结
  10. 微信支付计算机,微信电脑版怎么支付?怎么开通微信支付?
  11. 梵语和藏语_《百字明》梵文和藏文发音区分
  12. 解构ODL:从代码到架构设计
  13. 我原来的chinaunix博客地址
  14. 毕设经典-人事档案管理系统(layer+SSM)-AOP介绍
  15. VB.net中金额大写转换
  16. python使用turtle库绘制一个红色五角星_使用turtle库绘制红色五角星图形
  17. Java编程那些事儿69——抽象类和接口(二)
  18. 无胁科技-TVD每日漏洞情报-2022-12-14
  19. linux系统编程:系统函数system
  20. 无敌均线操作法(一)

热门文章

  1. Windows live messenger (WLM)邀请大放送--MSN8.0版(有条件)
  2. 谷歌:早在这个0day 补丁发布前几周,朝鲜国家黑客就已利用
  3. 美国Hack the Army 3.0 漏洞奖励计划启动
  4. 为了摸清敌人对自己了解多少,高阶国家黑客组织Turla 决定偷走反病毒日志
  5. RigUp 数据库暴露7.6万份美国能源行业文件
  6. Nand_ECC_校验和纠错_详解
  7. WSS 3.0部署备忘 六
  8. 纯CSS实现的3D简洁按钮设计
  9. 新练习作,实验室网站首页——未采用
  10. Linux系统启动过程分析 -转