php7.2的编译安装参考:https://www.cnblogs.com/rxbook/p/9106513.html

已有的之前编译的旧版本php:

mv /usr/local/php /usr/local/php72

下载,解压,编译:

wget https://www.php.net/distributions/php-7.3.12.tar.gz
tar -zxvf php-7.3..tar.gz
cd php-7.3.
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --with-openssl --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl

--报错:php-7.3.4 configure: error: Please reinstall the libzip distribution:

# wget https://libzip.org/download/libzip-1.5.2.tar.gz
tar -zxf libzip-1.5..tar.gz
cd libzip-1.5.
mkdir build
cd build
cmake ..
make -j4
make install

---- 此过程报错:CMake 3.0.2 or higher is required. You are running version,参考:https://www.cnblogs.com/rxbook/p/11911375.html

然后再次编译,通过:

说明:由于PHP7.2不再支持mysql,而是用mysqli取代。因此会出现上面图中所示的warning。不过没关系,如果需要安装php的mysql扩展,文章后面会有说明。

编译完成之后,执行安装命令:

$ make && make install

说明:如果是在阿里云购买的内存较小的云服务器,安装到这里可能会出现如下错误:

virtual memory exhausted: Cannot allocate memory
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

解决方案:https://www.cnblogs.com/rxbook/p/8005944.html

然后,重新 make && make install

接下来,安装过程大约需要20分钟时间,安装成功的界面如下:

【配置PHP】

在之前编译的源码包中,找到 php.ini-production,复制到/usr/local/php下,并改名为php.ini:

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

[可选项] 设置让PHP错误信息打印在页面上

$ vim /usr/local/php/php.ini

1
display_errors = On

复制启动脚本:

$ cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

$ chmod +x /etc/init.d/php-fpm

修改php-fpm配置文件:

$ cd /usr/local/php/etc

$ cp php-fpm.conf.default php-fpm.conf

$ vim php-fpm.conf

1
① 去掉 pid = run/php-fpm.pid 前面的分号

$ cd php-fpm.d

$ cp www.conf.default www.conf

$ vim www.conf

1
② 修改user和group的用户为当前用户(也可以不改,默认会添加nobody这个用户和用户组)

 

【启动PHP】

$ /etc/init.d/php-fpm start        #php-fpm启动命令

$ /etc/init.d/php-fpm stop         #php-fpm停止命令

$ /etc/init.d/php-fpm restart        #php-fpm重启命令

$ ps -ef | grep php 或者 ps -A | grep -i php  #查看是否已经成功启动PHP

【安装PHP测mongodb扩展和redis扩展】

cd /usr/local/php/bin/
./pecl install mongodb
./pecl install redis
./pecl install memcached
./pecl install xxx...

【PHP7.2的MySQL扩展】

由于PHP7.2不再支持mysql,而是用mysqli取代,如果需要安装php的mysql扩展,请看这里。

下载安装包:链接:https://pan.baidu.com/s/1bqDutYZ  密码:ae40

解压,并进入目录:

$ tar -zxvf mysql-24d32a0.tar.gz

$ cd mysql-24d32a0

$ /usr/local/php/bin/phpize  #使用phpize初始化

#编译mysql扩展,使用mysql native driver 作为mysql链接库

$ ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysql=mysqlnd

接下来,安装:

$ make && make install

最后,编辑php.ini文件,在最后面加入 extension=mysql.so 即可。

$ vim /usr/local/php/php.ini

重启PHP,查看phpinfo()

$ /etc/init.d/php-fpm restart

linux centos编译安装php7.3的更多相关文章

  1. nginx php-fpm安装配置 CentOS编译安装php7.2

    CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...

  2. CentOS编译安装php7.2

    介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是否存在兼容性,如果程序是基于php ...

  3. centos编译安装php7

    环境说明 VMware 12 中搭建的CentOS 7 x64 4核 2G内存 环境中已经安装了http://blog.csdn.net/u014595668/article/details/5016 ...

  4. 超详细的 Linux CentOS 编译安装python3

    前言: 安装完CentOS7后,执行#Python与#python -V,看到版本号是2.6,而且之前写的都是跑在python3.X上面的,3.X和2.X有很多不同,在这里我就不弊述两者之间的区别了新 ...

  5. Linux下编译安装php7.2

    准备工作 所有操作需要在root用户下 安装路径: /usr/local/php 安装PHP 首先要安装如下依赖包 $ yum install -y gcc gcc-c++  make zlib zl ...

  6. centOs编译安装php7.2支持微擎php扩展

    发现yum安装许多坑 于是只好编译安装 第一步得到镜像地址 在      https://www.php.net/downloads.php     有的地址比较慢,需要耐心等待 cd /usr/lo ...

  7. linux下编译安装nginx

    1.首先下载稳定版nginx1.10.2 使用wget命令下载 wget http://nginx.org/download/nginx-1.10.2.tar.gz 2.然后解压 tar -zxvf  ...

  8. linux编译安装php7

    1.首先下载php7 使用wget命令下载 wget http://cn2.php.net/distributions/php-7.0.12.tar.bz2 2.然后解压 tar -xvf php-7 ...

  9. Linux CentOS 7 安装PostgreSQL 9.5.17 (源码编译)

    近日需要将PostgreSQL数据库从Windows中迁移到Linux中,Linux CentOS 7 安装PostgreSQL 9.5.17 安装过程 特此记录. 安装环境: 数据库:Postgre ...

随机推荐

  1. 【数据库】数据库入门(三): SQL

    SQL: 结构化查询语言(Structured Query Language) SQL 是由 IBM 公司首先开发产生,它是关系型数据库最早出现的商用语言之一.1974年,IBM 公司 San Jos ...

  2. Docker08-网络管理

    目录 桥接网络 Bridge Network 相关操作命令 实例演示:容器之间通过自定义bridge通讯 宿主网络 Host Network Overlay Network 相关操作命令 实例演示:容 ...

  3. 【Linux】linux之如何清理磁盘空间

    相关命令: 1.查询磁盘空间占用情况df -h2.进入根目录,查询大文件与目录 cd /du -sh * | sort -n 查看上GB的目录并且排序,可以用这个命令du -h --max-depth ...

  4. iView学习笔记(三):表格搜索,过滤及隐藏列操作

    iView学习笔记(三):表格搜索,过滤及隐藏某列操作 1.后端准备工作 环境说明 python版本:3.6.6 Django版本:1.11.8 数据库:MariaDB 5.5.60 新建Django ...

  5. POJ - 1981 :Circle and Points (圆的扫描线) hihocoder1508

    题意:给定N个点,然后给定一个半径为R的圆,问这个圆最多覆盖多少个点. 思路:在圆弧上求扫描线. 如果N比较小,不难想到N^3的算法. 一般这种覆盖问题你可以假设有两个点在圆的边界上,那么每次产生的圆 ...

  6. luogu2900:Land Acquisition(斜率优化)

    题意:有N块地,每块地给出的宽和高,然后可以分批买,每次买的代价是所选择的地种最宽*最高. 问怎么买,使得代价和最小. 思路:显然,先去掉被包括的情况,即如果一个地的宽和高斗比另外一个小,那么久可以删 ...

  7. linux下使用openssl生成https的crt和key证书

    x509证书一般会用到三类文,key,csr,crt Key 是私用密钥openssl格,通常是rsa算法. Csr 是证书请求文件,用于申请证书.在制作csr文件的时,必须使用自己的私钥来签署申,还 ...

  8. 别名alias永久生效别名alias永久生效;虚拟机的NAT模式,进行静态IP配置,并A、B的实现免密访问

    别名alias永久生效 1.打开cd /etc/profile.d 目录 新建文件my_alias.sh 2.my_alias.sh里面添加 alias p=’poweroff -h’ alias r ...

  9. React中组件通信的几种方式

    https://segmentfault.com/a/1190000012361461 需要组件之进行通信的几种情况 父组件向子组件通信 子组件向父组件通信 跨级组件通信 没有嵌套关系组件之间的通信 ...

  10. python - django 项目部署 Ubuntu 服务器后接口访问一直 502 问题

    问题描述:最近有了一台 Ubuntu 的服务器,然后准备部署个项目,结果没想到部署的过程跟用 Centos 的时候还有点不一样,最后一步我是卡在了 uwsgi 这里,访问一直502,且可以访问项目的静 ...