CentOS 7 安装php7(已有php5.4)

简介: 新的程序需要php7才能支持,老程序必须用php5.x 准备安装php7之前已经用yum安装了php5.4了,因为有老程序必须使用所以需要保留php5.4 采用源码编译安装 wget http://am1.

新的程序需要php7才能支持,老程序必须用php5.x

准备安装php7
之前已经用yum安装了php5.4了,因为有老程序必须使用
所以需要保留php5.4

采用源码编译安装

wget http://am1.php.net/distributions/php-7.2.0.tar.bz2
tar -jxvf php-7.2.0.tar.bz2
cd php-7.2.0

安装依赖库
yum -y install libxml2-devel curl-devel libpng libpng-devel libxslt libxslt-devel

./configure --prefix=/usr/local/php7 --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvshm --enable-sysvmsg --enable-sysvsem --enable-xml --enable-zip --with-fpm-user=nginx --enable-ftp --enable-exif  --enable-session --with-mhash --with-ldap

–prefix=/usr/local/php7 单独安装在php7的文件夹,避免和php5冲突*
--with-ldap 增加ldap支持

编译

make

然后可以测试一下

make test #测试时间要十几分钟,可以跳过

安装

make install

准备配置文件

cp php.ini-production /usr/local/php7/etc/php.ini
cd /usr/local/php7/etc/
cp php-fpm.conf.default php-fpm.conf
cd php-fpm.d
cp www.conf.default www.conf
vi www.conf #修改端口号9001

创建php7-fpm的服务
cd /usr/lib/systemd/system
cp php-fpm.service php-fpm7.service #拷贝php5的服务
cp /etc/sysconfig/php-fpm /usr/local/php7/etc/
vi php-fpm7.service #修改路径

[Unit]
  Description=The PHP FastCGI Process Manager
  After=syslog.target network.target
 
  [Service]
  Type=notify
  PIDFile=/run/php-fpm/php-fpm7.pid
  EnvironmentFile=/usr/local/php7/etc/php-fpm
  ExecStart=/usr/local/php7/sbin/php-fpm --nodaemonize
  ExecReload=/bin/kill -USR2 $MAINPID
  PrivateTmp=true
 
  [Install]
  WantedBy=multi-user.target

这个方式启动有点问题

启动后一直等等,这个时候php网站可以访问
然后一段时间会超时失败。失败后php网站无法访问。

init.d的方式启动

vi /etc/init.d/php-fpm7

\# ! /bin/sh
\# chkconfig: 2345 80 90
\# Comments to support chkconfig on CentOS

set -e

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="php-fpm7 daemon"
NAME=php-fpm7
DAEMON=/usr/local/php7/sbin/$NAME

CONFIGFILE=/usr/local/php7/etc/php-fpm.conf
PIDFILE=/usr/local/php7/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

\# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

d_start() {
  $DAEMON -y $CONFIGFILE || echo -n " already running"
}

d_stop() {
  kill -QUIT `cat $PIDFILE` || echo -n " not running"
}

d_reload() {
  kill -HUP `cat $PIDFILE` || echo -n " can't reload"
}

case "$1" in
  start)
    echo -n "Starting $DESC is success"
    d_start
    echo "."
    ;;
 stop)
    echo -n "Stopping $DESC is success"
    d_stop
    echo "."
    ;;
 reload)
    echo -n "Reloading $DESC configuration..."
    d_reload
    echo "reloaded."
  ;;
  restart)
      echo -n "Restarting $DESC is success"
      d_stop
      sleep 1
      d_start
      echo "."
       ;;
  *)
     echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
     exit 3
    ;;
esac

启动

chmod +x /etc/init.d/php-fpm7
/etc/init.d/php-fpm7 start

开机启动

chkconfig --add php-fpm7
chkconfig php-fpm7 on
chkconfig --list #检查是否成功

目录
相关文章
|
10天前
|
Java 程序员 PHP
01 入门PHP就来我这-安装phpstudy
路老师的PHP入门教程,带你从零开始学习PHP。首先下载并安装phpStudy,接着配置域名和端口,最后创建并运行第一个PHP文件。内容详实,适合初学者。
31 3
01 入门PHP就来我这-安装phpstudy
|
9天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
10天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
17天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
51 3
|
18天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
32 2
|
20天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
61 2
|
6天前
|
存储 安全 Linux
VMware安装CentOS7
【11月更文挑战第11天】本文详细介绍了在 VMware 中安装 CentOS 7 的步骤,包括准备工作、创建虚拟机、配置虚拟机硬件和安装 CentOS 7。具体步骤涵盖下载 CentOS 7 镜像文件、安装 VMware 软件、创建和配置虚拟机硬件、启动虚拟机并进行安装设置,最终完成 CentOS 7 的安装。在安装过程中,需注意合理设置磁盘分区、软件选择和网络配置,以确保系统的性能和功能满足需求。
|
2月前
|
安全 关系型数据库 MySQL
PHP与MySQL交互:从入门到实践
【9月更文挑战第20天】在数字时代的浪潮中,掌握PHP与MySQL的互动成为了开发动态网站和应用程序的关键。本文将通过简明的语言和实例,引导你理解PHP如何与MySQL数据库进行对话,开启你的编程之旅。我们将从连接数据库开始,逐步深入到执行查询、处理结果,以及应对常见的挑战。无论你是初学者还是希望提升技能的开发者,这篇文章都将为你提供实用的知识和技巧。让我们一起探索PHP与MySQL交互的世界,解锁数据的力量!
|
2月前
|
NoSQL 关系型数据库 MySQL
不是 PHP 不行了,而是 MySQL 数据库扛不住啊
【9月更文挑战第8天】这段内容讨论了MySQL在某些场景下面临的挑战及其原因,并指出这些问题不能完全归咎于MySQL本身。高并发读写压力、数据量增长以及复杂查询和事务处理都可能导致性能瓶颈。然而,应用程序设计不合理、系统架构不佳以及其他数据库选择和优化策略不足也是重要因素。综合考虑这些方面才能有效解决性能问题,而MySQL通过不断改进和优化,仍然是许多应用场景中的可靠选择。
137 9
|
3月前
|
存储 SQL 关系型数据库
PHP与MySQL交互的奥秘
【8月更文挑战第29天】在编程的世界里,PHP和MySQL就像是一对默契的舞伴,共同演绎着数据的交响曲。本文将带你探索它们之间的互动,从连接数据库到执行查询,再到处理结果,每一步都充满了节奏与和谐。我们将一起走进这段代码的旅程,感受数据流动的魅力。