微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ubantu 怎么编译安装php7

ubuntu编译安装PHP7的方法:1、下载PHP7.4的源代码到Ubuntu上;2、安装PHP需要的依赖;3、配置PHP安装参数;4、通过“sudo make install”执行编译安装即可。

本文操作环境:Ubuntu 18.04系统、PHP7.4版、DELL G3电脑

安装环境:操作系统:Ubuntu 18.04 PHP版本: PHP 7.4 Web服务器:Nginx 1.17.4

ubantu 怎么编译安装PHP7?

Ubuntu编译安装PHP7.4

数据库:Mariadb 10.0.38(MysqL一个分支,与MysqL兼容)

安装之前

按照惯例更新软件列表:

sudo apt-get update

安装PHP7.4

下载PHP 7.4的源代码到Ubuntu上:

`wget https://www.PHP.net/distributions/PHP-7.4.0.tar.gz`

如果下载速度太慢,可以使用PHP 7.4国内高速下载地址:

wget https://gz-1257226027.cos.ap-guangzhou.myqcloud.com/PHP-7.4.0.tar.gz

解压,进入PHP7.4源代码目录:

tar zxvf PHP-7.4.0.tar.gz
cd PHP-7.4.0/

先安装PHP需要的依赖

sudo apt-get install libzip-dev bison autoconf build-essential pkg-config git-core\
   libltdl-dev libbz2-dev libxml2-dev libxslt1-dev libssl-dev libicu-dev libpspell-dev\
   libenchant-dev libmcrypt-dev libpng-dev libjpeg8-dev libfreetype6-dev libMysqLclient-dev\
   libreadline-dev libcurl4-openssl-dev librecode-dev libsqlite3-dev libonig-dev

配置PHP安装参数

./configure --prefix=/usr/local/PHP7 --with-config-file-scan-dir=/usr/local/PHP7/etc/PHP.d --with-config-file-path=/usr/local/PHP7/etc --enable-mbstring --enable-zip --enable-bcmath --enable-pcntl --enable-ftp --enable-xml --enable-shmop --enable-soap --enable-intl --with-openssl --enable-exif --enable-calendar --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-opcache --enable-fpm --enable-session --enable-sockets --enable-mbregex --enable-wddx --with-curl --with-iconv --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-freetype-dir=/usr --enable-gd-jis-conv --with-openssl --with-pdo-MysqL=MysqLnd --with-gettext=/usr --with-zlib=/usr --with-bz2=/usr --with-recode=/usr --with-xmlrpc --with-MysqLi=MysqLnd

执行编译安装

sudo make install

如果编译过程中提示内存不足:

virtual memory exhausted: Cannot allocate memory
Makefile:921: recipe for target ‘ext/fileinfo/libmagic/apprentice.lo’ Failed
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

请先给服务器添加虚拟内存,参考: 为Linux添加虚拟内存Swap。

复制配置文件

sudo cp /usr/local/PHP7/etc/PHP-fpm.conf.default /usr/local/PHP7/etc/PHP-fpm.conf
sudo cp /usr/local/PHP7/etc/PHP-fpm.d/www.conf.default /usr/local/PHP7/etc/PHP-fpm.d/www.conf
sudo cp PHP.ini-production /usr/local/PHP7/etc/PHP.ini

添加环境变量,编辑 /etc/profile,文件末尾添加一行:

PATH=/usr/local/PHP7/bin:/usr/local/PHP7/sbin:$PATH

使环境变量生效:

source /etc/profile

PHP添加到sudo环境变量,编辑 /etc/sudoers文件中的 Defaults secure_path,后面加上PHP路径:

/usr/local/PHP7/bin:/usr/local/PHP7/sbin:

启动PHP-fpm

sudo PHP-fpm

如果提示找不到用户组nobody的gid:

[15-Nov-2019 15:53:49] ERROR: [pool www] cannot get gid for group ‘nobody’
[15-Nov-2019 15:53:49] ERROR: FPM initialization Failed

就要先创建nobody用户组:

sudo groupadd nobody

再重新执行sudo PHP-fpm即可启动。

使用PHP -v命令查看PHP版本:

 PHP -v
PHP 7.4.0 (cli) (built: Nov 28 2019 13:38:00) ( NTS )
copyright (c) The PHP Group
Zend Engine v3.4.0, copyright (c) Zend Technologies

推荐学习:《PHP教程

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐