11.13 安装PHP7

安装PHP7目录概要

  • cd /usr/local/src/
  • wget http://cn2.php.net/distributions/php-7.1.6.tar.bz2
  • tar zxf php-7.1.6.tar.bz2
  • cd php-7.1.6
  • ./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php7/etc --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif
  • make && make install
  • ls /usr/local/apache2.4/modules/libphp7.so
  • cp php.ini-production /usr/local/php7/etc/php.ini

安装过程php7

  1. 首先切换到/usr/local/src/目录下
[root@hf-01 php-5.6.30]# cd /usr/local/src/
[root@hf-01 src]# 
  1. 然后下载PHP7.1版本安装包
[root@hf-01 src]# wget http://cn2.php.net/distributions/php-7.1.6.tar.bz2
  1. 查看PHP7安装包,并解压
[root@hf-01 src]# ls
apr-1.6.3               mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz
apr-1.6.3.tar.gz        mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
apr-util-1.6.1          php-5.6.30
apr-util-1.6.1.tar.bz2  php-5.6.30.tar.gz
httpd-2.4.29            php-7.1.6.tar.bz2
httpd-2.4.29.tar.gz
[root@hf-01 src]# tar jxvf php-7.1.6.tar.bz2    //解压php7.1版本
  1. 进入到PHP7的源码包目录下/usr/local/src/php-7.1.6/
[root@hf-01 src]# cd php-7.1.6/
[root@hf-01 php-7.1.6]# 
  1. 初始化配置
    • 这里php7和php5的区别
      • --prefix=/usr/local/php7这里定义的目录名字是php7
      • --with-config-file-path=/usr/local/php7/etc这里定义的配置文件路径是php7
      • 这里只有--with-mysqli,没有--with-mysql,而其他的都类似
[root@hf-01 php-7.1.6]# ./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php7/etc  --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif
  1. 在初始化配置完成后,然后make && make install
[root@hf-01 php-7.1.6]# make && make install
  1. 这样php7.1就安装成功了

小知识(安装两个php)

  • 一台机器上安装两个php,两个PHP是可以同时存,但是Apache调用PHP的时候,需要指定好,在——> vim /usr/local/apache2.4/conf/httpd.conf 里面指定使用哪一个PHP即可

查看PHP7的文件

  • 查看libphp7和5是不同的,/usr/local/apache2.4/modules/libphp7.so
[root@hf-01 php-7.1.6]# ls /usr/local/apache2.4/modules/libphp7.so
/usr/local/apache2.4/modules/libphp7.so
[root@hf-01 php-7.1.6]# du -sh !$        //查看php7大小
du -sh /usr/local/apache2.4/modules/libphp7.so
37M	/usr/local/apache2.4/modules/libphp7.so
[root@hf-01 php-7.1.6]# 
  1. 查看php7所加载的模块,/usr/local/php7/bin/php -m,和php5基本是一致的
[root@hf-01 php-7.1.6]# /usr/local/php7/bin/php -m
[PHP Modules]
bz2
Core
ctype
date
dom
exif
fileinfo
filter
gd
hash
iconv
json
libxml
mbstring
mcrypt
mysqli
openssl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
soap
sockets
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
zlib

[Zend Modules]

[root@hf-01 php-7.1.6]# 
  1. 查看Apache加载了几个php
    • 会看到加载了php5和php7
[root@hf-01 php-7.1.6]# /usr/local/apache2.4/bin/apachectl -M
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.0.104. Set the 'ServerName' directive globally to suppress this message
Loaded Modules:
 core_module (static)
 so_module (static)
 http_module (static)
 mpm_event_module (static)
 authn_file_module (shared)
 authn_core_module (shared)
 authz_host_module (shared)
 authz_groupfile_module (shared)
 authz_user_module (shared)
 authz_core_module (shared)
 access_compat_module (shared)
 auth_basic_module (shared)
 reqtimeout_module (shared)
 filter_module (shared)
 mime_module (shared)
 log_config_module (shared)
 env_module (shared)
 headers_module (shared)
 setenvif_module (shared)
 version_module (shared)
 unixd_module (shared)
 status_module (shared)
 autoindex_module (shared)
 dir_module (shared)
 alias_module (shared)
 php5_module (shared)
 php7_module (shared)
[root@hf-01 php-7.1.6]# 
  1. 若想去使用哪一个PHP,根据自己的实际需求
[root@hf-01 php-7.1.6]# vim /usr/local/apache2.4/conf/httpd.conf

搜索php5.so,会看到有两行
LoadModule php5_module        modules/libphp5.so
LoadModule php7_module        modules/libphp7.so

想使用哪个php,就在另一个前面加 # 号注释掉,然后保存

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Rainbond开源「容器云平台」

边做边学,基于Spring Cloud的微服务架构最佳实践

1704
来自专栏Android相关

Gradle For Android(1)--使用AndroidStudio开始Gradle

build.gradle是为了构建Android项目的脚本。Gradle构建脚本并不是使用传统的XML,而是基于Groovy的domain-specific l...

1013
来自专栏IT笔记

Spring3+Hibernate3升级为Spring4+Hibernate4

写在开始 今天,把当前项目做了一下升级,特此记录一下。 由于历史原因,项目本身并不是Maven项目,所以升级JAR包都是手动从Maven库中下载,然后load进...

3176
来自专栏IT可乐

eclipse在debug模式下总是自动进入到ThreadPoolExecutor类中

  当我们将web项目发布到tomcat服务器中,并且以debug模式启动的时候,总是自动跳转到 ThreadPoolExecutor 类中,如下: ? 解决办...

2215
来自专栏屈定‘s Blog

Alfred插件开发--了解Alfred的数据流动

最近发现要记住的长命令太多了,因此打算开发一款Alfred插件帮助自己记录. 先展示下成品,大概就是输入关键词->搜索展示->复制到指定位置这一流程,借此开分析...

1843
来自专栏电光石火

获得PHP版本信息及版本比较

version_compare是一个版本比较工具,当然也可以作为其他的版本比较工具:

873
来自专栏Python爬虫与数据挖掘

在Windows下如何创建指定的虚拟环境

前几天给大家分享了如何在默认的情况下创建虚拟环境,没来得及上车的伙伴,可以戳这篇文章:在Windows下如何创建虚拟环境(默认情况下)。今天小编给大家分享一下,...

861
来自专栏静默虚空的博客

[JSP]JSP 简介

1.1 概述 1.1.1 什么是 JSP? JSP 全称是 Java Server Pages,是一种动态网页开发技术。 它与 PHP、ASP、ASP.NET ...

2836
来自专栏指尖下的Android

NDK开发环境配置

1,新建项目添加C++支持,让Android Studio自动生成相关的配置文件 2,设置生成的.SO库名和相应的平台库 在配置build.gradle文件...

1661
来自专栏Java技术栈

Junit5新功能一览

Java的JUnit测试框架已经来到了5这个版本,与以前的版本不同的是JUnit5具有来自多个子项目的模块,其中包括: 1、Platform,用于在JVM上启动...

3427

扫码关注云+社区

领取腾讯云代金券