ubuntu tar.gz 包 php7.2 安装

一 官网: https://www.php.net/downloads.php

https://blog.izgq.net/archives/910/

https://www.jianshu.com/p/1ff101482b31

官网文档; https://www.php.net/manual/zh/install.unix.apache2.php

安装依赖

sudo apt-get install libxml2-dev

sudo apt-get install libcurl4-gnutls-dev
sudo apt-get install libbz2-dev
sudo apt-get install libjpeg-dev
sudo apt-get install libpng-dev
sudo apt-get install libxpm-dev
sudo apt-get install libfreetype6-dev
sudo apt-get install libt1-dev
sudo apt-get install libmcrypt-dev
sudo apt-get install libmysql++-dev
sudo apt-get install libxslt1-dev
sudo apt-get install libssl-dev
sudo apt-get install libgmp-dev
sudo apt install -y libedit-dev libreadline-dev
apt-get install libzip-dev
 

下载解压

https://www.php.net/distributions/php-7.2.20.tar.gz
tar -xzvf php-7.2.20.tar.gz 
mv php-7.2.20 php

编译前准备

sudo apt install build-essential bison re2c pkg-config -y
sudo apt install build-essential bison re2c pkg-config libxml2-dev libbz2-dev libssl-dev libcurl4-openssl-dev libjpeg-dev libpng12-dev libfreetype6-dev libgmp-dev libreadline6-dev libxslt1-dev libzip-dev -y

二.配置和创建PHP

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs
 
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --enable-fpm

  

执行该语句时可能会出现如下提示:

error: xml2-config not found. Please check your libxml2 installation


此时执行make命令会出现以下错误:

“make: *** No targets specified and no makefile found. Stop.”


这是因为缺少xml2-config文件造成的。解决方案:

sudo apt-get install libxml2
sudo apt-get install libxml2-dev

之后在此执行以下语句完成编译安装

./configure 
-with-apxs2=/usr/local/apache2/bin/apxs
--prefix=/usr/local/php --with-config-file-path=/etc --enable-fpm --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --with-libxml-dir --with-xmlrpc --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --with-libzip=../libzip-1.3.2 --enable-bcmath --with-iconv --with-bz2 --with-openssl --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --enable-mbregex --enable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear --enable-opcache
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs #指定Apache2−−with−apxs2=/usr/local/apache2/bin/apxs——指定Apache2
make
make install
make test

、安装时报错内存 不足recipe for target 'ext/fileinfo/libmagic/apprentice.lo' failed,把服务器应用全关了 重新安装ok

4.将php.ini拷贝到/usr/local/lib/

cp php.ini-development /usr/local/lib/php.ini

查看编译时参数

php -i|grep config

查看php.ini 默认加载路径

php -i|grep php.ini

查看php配置文件有没有加载

 php --ini

5.编辑httpd.conf,加载PHP模块

LoadModule php7_module modules/libphp7.so  #好像程序自己加进去了 

7.重启Apache2

/usr/local/apache2/bin/apachectl restart
1
8.测试PHP是否安装成功
在Apache2的指定文件目录下添加index.php文件,并输入以下内容

<?php
phpinfo();
?>

然后在浏览器输入url——localhost/index.php,如果查看到以下结果,则说明安装成功,若没有,可以考虑重新编译安装。

原文地址:https://www.cnblogs.com/jiangfeilong/p/11143698.html