linux centos编译安装php7.3
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的更多相关文章
- nginx php-fpm安装配置 CentOS编译安装php7.2
CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...
- CentOS编译安装php7.2
介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是否存在兼容性,如果程序是基于php ...
- centos编译安装php7
环境说明 VMware 12 中搭建的CentOS 7 x64 4核 2G内存 环境中已经安装了http://blog.csdn.net/u014595668/article/details/5016 ...
- 超详细的 Linux CentOS 编译安装python3
前言: 安装完CentOS7后,执行#Python与#python -V,看到版本号是2.6,而且之前写的都是跑在python3.X上面的,3.X和2.X有很多不同,在这里我就不弊述两者之间的区别了新 ...
- Linux下编译安装php7.2
准备工作 所有操作需要在root用户下 安装路径: /usr/local/php 安装PHP 首先要安装如下依赖包 $ yum install -y gcc gcc-c++ make zlib zl ...
- centOs编译安装php7.2支持微擎php扩展
发现yum安装许多坑 于是只好编译安装 第一步得到镜像地址 在 https://www.php.net/downloads.php 有的地址比较慢,需要耐心等待 cd /usr/lo ...
- linux下编译安装nginx
1.首先下载稳定版nginx1.10.2 使用wget命令下载 wget http://nginx.org/download/nginx-1.10.2.tar.gz 2.然后解压 tar -zxvf ...
- linux编译安装php7
1.首先下载php7 使用wget命令下载 wget http://cn2.php.net/distributions/php-7.0.12.tar.bz2 2.然后解压 tar -xvf php-7 ...
- Linux CentOS 7 安装PostgreSQL 9.5.17 (源码编译)
近日需要将PostgreSQL数据库从Windows中迁移到Linux中,Linux CentOS 7 安装PostgreSQL 9.5.17 安装过程 特此记录. 安装环境: 数据库:Postgre ...
随机推荐
- jmeter 实现登录参数化
业务场景 在测试过程中,一般需要模拟不同的用户登录,这样压测的数据比较平均,也能更好的模拟真实的压力情况. 如果使用同一个用户账号进行测试,那么比如在查询代办的时候,此人的待办太多,也不符合实际的情况 ...
- 百度云人脸识别API人脸库管理
from urllib import request import base64 import requests import re import json import urllib impor ...
- 4484: [Jsoi2015]最小表示(拓扑序+bitset维护连通性)
4484: [Jsoi2015]最小表示 题目链接 题解: bitset的题感觉都好巧妙啊QAQ. 因为题目中给出的是一个DAG,如果\(u->v\)这条边可以删去,等价于还存在一个更长的路径可 ...
- httprunner学习7-extract提取content返回对象
前言 提取response返回的对象数据,用extract关键字.前面有关于token的取值,通过content.token取值. 本篇详细讲解如何从返回的json数据提取出想要的各种数据 conte ...
- springboot项目突然启动缓慢
在项目快到最后的时候,有一次在本地启动项目的时候,突然发现项目启动起来特别的慢. 刚开始也不知道哪里出了问题,只能慢慢的查原因. springboot项目在debug模式下本来运行的挺快,后来某一天突 ...
- Java并发(八)计算线程池最佳线程数
目录 一.理论分析 二.实际应用 为了加快程序处理速度,我们会将问题分解成若干个并发执行的任务.并且创建线程池,将任务委派给线程池中的线程,以便使它们可以并发地执行.在高并发的情况下采用线程池,可以有 ...
- Eclipse 常用快捷键——IDEA 常用快捷键
Eclipse 常用快捷键 熟练 单选注释 ctrl + / 多行注释 ctrl + shift + / 向下复制一行 (Duplicate Lines) ctrl+alt+down 删除一行或选中行 ...
- python--io多路复用之select实现
1.I/O多路复用指:通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作. 2.I/O多路复用避免阻塞在io上,原本为多进程或多线程来接收多 ...
- HDU 6583 Typewriter(后缀自动机)
Typewrite \[ Time Limit: 1500 ms\quad Memory Limit: 262144 kB \] 题意 给出一个字符串 \(s\),现在你需要构造出这个字符串,你每次可 ...
- 用数据让我们的OKR变得“冷酷”却更有价值
在外企工作过的朋友大多能感受到数据在工作中的重要性,你要设置一个目标要有明确的数据来衡量,你要汇报工作进展要有清楚的数据来显示进度,你要展示工作成果更是需要有代表性的数据来呈现结果,数据是真真实实的结 ...