安装步骤

1. 使用wget命令下载源码安装包

wget https://www.php.net/distributions/php-7.3.8.tar.gz --no-check-certificate

【说明】如果报SSL Certification错误信息的话,就加上 --no-check-certificate选项,一般不需要添加。

2. 解压.tar.gz文件

tar -xzvf php-7.3.8.tar.gz

3. 进入php-7.3.8目录下,执行./configure,即配置和构建PHP

查看configure的用法以及配置选项: ./configure -h 或者 --help

php常用配置及其说明

--prefix=/usr/local/php7 # 配置安装目录--with-config-file-path=/usr/local/php7 # 配置文件 php.ini 的路径--enable-sockets # 开启 socket--enable-fpm # 启用 fpm 扩展--enable-cli # 启用 命令行模式 (从 php 4.3.0之后这个模块默认开启所以可以不用再加此命令)--enable-mbstring # 启用 mbstring 库--enable-pcntl # 启用 pcntl (仅 CLI /CGI)--enable-soap # 启用 soap--enable-opcache # 开启 opcache 缓存--disable-fileinfo # 禁用 fileinfo (由于 5.3+之后已经不再持续维护了,但默认是开启的,所以还是禁止了吧)(1G以下内存服务器直接关了吧)--disable-rpath #禁用在搜索路径中传递其他运行库。--with-mysqli # 启用 mysqli 扩展--with-pdo-mysql # 启用 pdo 扩展--with-iconv-dir # 启用 XMLRPC-EPI 字符编码转换 扩展--with-openssl # 启用 openssl 扩展 (需要 openssl openssl-devel)--with-fpm-user=www #设定 fpm 所属的用户--with-fpm-group=www #设定 fpm 所属的组别--with-curl # 启用 curl 扩展--with-mhash # 开启 mhash 基于离散数学原理的不可逆向的php加密方式扩展库

# GD--with-gd # 启用 GD 图片操作 扩展--with-jpeg-dir# 开启对 jpeg 图片的支持 (需要 libjpeg)--with-png-dir# 开启对 png 图片支持 (需要 libpng)--with-freetype-dir# 开启 freetype

# 压缩--enable-zip # 启用 zip

--with-zlib # 启用对 zlib 支持

# xml--enable-simplexml # 启用对 simplexml 支持--with-libxml-dir # 启用对 libxml2 支持

#一些不常用的配置

--enable-debug # 开启 debug 模式

我执行configure的命令如下:

./configure --prefix=/usr/local/php7 \

--with-config-file-path=/usr/local/php7 \

--enable-sockets \

--enable-fpm \

--enable-cli \

--enable-mbstring \

--enable-pcntl \

--enable-soap \

--enable-opcache \

--disable-fileinfo \

--disable-rpath \

--with-mysqli

--with-pdo-mysql \

--with-iconv-dir \

--with-fpm-user=www \

--with-fpm-group=www \

--with-curl=/usr/local/curl \

--with-mhash \

--with-gd=no \

--with-jpeg-dir \

--with-png-dir \

--with-freetype-dir \

--enable-zip \

--with-zlib \

--enable-simplexml \

--with-libxml-dir \

--with-openssl=/usr/local/openssl

在执行过程中,可能会有报错。我在执行过程中,遇到了curl和OpenSSL库的安装路径没有找到,因为不是安装在/etc/bin和/etc/lib路径下,所以需要手动设置这两个库的安装路径:

--with-curl=/usr/local/curl

--with-openssl=/usr/local/openssl

我关闭了GD图片操作扩展,即:--with-gd=no,如果是:--with-gd ,则表示开启。

4. 编译和安装

make && make install

5. 配置PHP环境变量

(1)vim /etc/profile //需要root权限

(2)在profile文件末尾添加如下内容:

export PATH=$PATH:/usr/local/php7/bin  #这一步可以让我们全局使用php命令

(3) source /etc/profile                               #让修改后的profile生效

(4) php -i //查看配置信息

如果第4步的执行成功打印了PHP information的话,表示PHP已经安装成功了。

## 查看php的用法帮助

$ php -h

## 查看php的版本信息

$ php -v

6. 配置php.ini文件

$ php -i|grep php.ini

Configuration File (php.ini) Path => /usr/local/php7

Loaded Configuration File => /usr/local/php7/php.ini

配置文件在安装包目录下: php-7.3.8/

php.ini-development   //开发模式版本

php.ini-production      //生产模式版本

这里,我们选择生产模式版本复制到指定路径下

$ cp php.ini-production /usr/local/php7/php.ini

php.ini文件所在的目录一定要与php -i里面查出的位置保持一致,不然修改php.ini文件是不会生效的。

7. 安装composer

> wget https://getcomposer.org/composer.phar

> cp composer.phar /usr/bin/composer

> cd /usr/bin; chmod u+x composer

> composer -v

如果打印出composer的版本信息,即表示composer安装成功了。

遇到的问题

【问题】error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed

1. 下载证书。https://curl.haxx.se/ca/cacert.pem,存放路径: /home/lbs/cert/cacert.pem(这个路径自定义)

2. 修改php.ini配置文件

> cd /usr/local/php7/;ls

> vim php.ini

修改openssl.cafile= /home/lbs/cert/cacert.pem

【参考】

centos6.8安装php7.3,CentOS7.6源码编译安装PHP 7.3.8相关推荐

  1. CentOS7下源码编译安装MySQL5.6.4

    CentOS7下源码编译安装MySQL5.6.4 写这篇博客的主要原因是:请看上一篇博客:CentOS7下更改MySQL5.6.4默认的数据存储位置.对,当初通过rpm安装的mysql5.6.4,一切 ...

  2. centos7上源码编译安装Heartbeat

      最近有遇到改造一款第三方软件安装包,安装路径统一到/opt/路径下.原来是直接使用yum安装的,本文则介绍如何采用源码编译方式在centos7上安装Heartbeat. 一.认识什么是Heartb ...

  3. mysql5.7.13编译安装_MySQL 5.7.13 源码编译安装配置方法图文教程

    安装环境:centos7 64位 mini版 官网源码编译安装文档: 一.系统安装条件 官方文档说明: 1> cmake mysql使用cmake跨平台工具预编译源码,用于设置mysql的编译参 ...

  4. centos lnmp源码安装mysql_CentOS 6.6 下源码编译安装MySQL 5.7.5

    说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具 # yum -y install gcc-c++ ncurses-devel cmake make perl \ ...

  5. centos7 访问php页面显示源码_运维干货分享:centos7下源码编译安装php-7.1.5(脚本)...

    PHP简介: PHP是一种创建动态交互性站点的强有力的服务器端脚本语言.PHP是目前动态网页开发中使用最为广泛的语言之一.PHP能运行在包括Windows.Linux等在内的绝大多数操作系统环境中. ...

  6. 7.1 pdo 宝塔面板php_运维干货分享:centos7下源码编译安装php-7.1.5(脚本)

    PHP简介: PHP是一种创建动态交互性站点的强有力的服务器端脚本语言.PHP是目前动态网页开发中使用最为广泛的语言之一.PHP能运行在包括Windows.Linux等在内的绝大多数操作系统环境中. ...

  7. Centos7.5源码编译安装nodejs

    官方文档:https://nodejs.org/zh-cn/download/releases/ 我安装的是 #1.把安装包上传到/usr/local/node #2.创建一个node文件夹 #3.解 ...

  8. openvswitch2.8.1 centos7.4 源码编译安装

    安装依赖 yum install gcc pkgconfig autoconf automake libtool  git make python-devel openssl-devel kernel ...

  9. centos 6 mysql 5.7.13 编译安装_Centos 6.5 下面 源码编译 安装 Mysql 5.7.13

    安装软件依赖包 yum -y install gcc gcc-c++ ncurses ncurses-devel cmake 下载软件包 cd  /usr/local/src wget https:/ ...

最新文章

  1. Kali Linux 64位架构安装Veil-Evasion
  2. linux c rename 重命名文件和文件夹
  3. 《剑指offer》第十八题(在O(1)时间删除链表结点)
  4. 若依微服务版前端怎样在接口返回500时去掉一直弹窗提示服务未找到
  5. Codeforces Round #622 (Div. 2) D. Happy New Year 状压dp
  6. ip地址的分类:A、B、C、D、E五类是如何划分的?
  7. [转载] 交互式数据可视化在Python中用Bokeh实现
  8. mysql int类型 int(11) 和int(2)区别
  9. emu8086——buf 缓冲区的字节数据排序算法程序
  10. 大数据下 移动计算 和 移动数据的一点理解
  11. 微信开发平台对接流程(Java版本)1
  12. Scheme 语言概要上
  13. 计算机运行快是取决什么,电脑速度快慢取决哪个硬件
  14. 蓝桥杯单片机学习记录——LED灯闪烁
  15. Android Wifi移植
  16. 前后端分别部署教程 ---- 第三部分项目部署和挂载到微信公众号
  17. 新建SVN仓库并上传项目
  18. 【opencv】goodFeaturesToTrack源码分析-2-Shi-Tomasi角点检测
  19. 行人检测0-05:LFFD-行人训练数据制作以及训练
  20. 一个ZFS开发者眼中的苹果最新文件存储系统APFS

热门文章

  1. u-boot.lds详细的分析
  2. 9.4-6 kill killall pkill
  3. 计算机硬盘read,为你解答电脑开机提示a disk read error occurred怎么办
  4. linux lynx 源码,Linux移植浏览器 Lynx字符浏览器移植
  5. mysql event type_MySQL 【Row】下的 Event_type
  6. mysql 2008新建用户_Sql Server 2008数据库新建分配用户的详细步骤
  7. 组件中使用_React四种组件通信详解
  8. hadoop 传感器数据_hadoop为什么是大数据学习的核心技术?
  9. 编译安装_Unbound编译安装
  10. python3.5中文手册_Python 入门指南 — Python3 中文手册 3.5.2 文档 | 三维部落