Linux Mint 19 安装PHP7.3,并与nginx配置

夙愿已清 提交于 2019-12-27 15:31:19

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

一、更新Linux Mint 19系统

确保运行的是Linux Mint最新版本,如果有重要的程序正在运行并且不想升级它们,则可以只对包列表进行更新,运行以下命令:

sudo apt update
sudo apt upgrade

如果安装了较新版本的Kernel,建议在升级后重新启动:

sudo reboot

二、将PHP 7.3存储库添加到Linux Mint 19

由于Linux Mint 19基于Ubuntu 18.04,因此要添加的存储库是针对Ubuntu 18.04版本的。

添加ondrej/php PPA存储库,它包含PHP 7.3软件包和其他必需的PHP扩展:

sudo add-apt-repository ppa:ondrej/php

sudo apt update

注:随着Linux Mint 19版本的不断更新,以后可能会提供PHP 7.3版本,到时这一步骤可以省略掉。

三、在Linux Mint 19上安装PHP 7.3

添加存储库后,通过在终端上运行以下命令来安装PHP 7.3:

sudo apt-get install php7.3

可以使用php -命令检查版本:

$ php -v
PHP 7.3.1-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Jan 13 2019 10:19:33) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.1, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.1-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

 

四、安装PHP 7.3扩展

使用以下命令安装PHP 7.3扩展:

sudo apt-get install php7.3-<entension-name>

比如:

sudo apt install php7.3-cli php7.3-json php7.3-pdo php7.3-mysql php7.3-zip php7.3-gd  php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath

可以使用apt policy命令确认已安装的PHP扩展版本:

$ apt policy php7.3-gd
php7.3-gd:
Installed: 7.3.1-1+ubuntu18.04.1+deb.sury.org+1
Candidate: 7.3.1-1+ubuntu18.04.1+deb.sury.org+1
Version table:
*** 7.3.1-1+ubuntu18.04.1+deb.sury.org+1 500
500 http://ppa.launchpad.net/ondrej/php/ubuntu bionic/main amd64 Packages
100 /var/lib/dpkg/status

五、在Linux Mint上安装PHP7.3-FPM

如果你正在使用Nginx Web Server,你需要安装php7.3-fpm来提供PHP页面,则运行以下命令:

sudo apt install php7.3-fpm

PHP-FPM配置文件位于/etc/php/7.3/fpm/文件夹下。

安装PHP后,建议重新启动Web服务器:

对于Apache:

sudo systemctl restart apache2

对于Nginx:

sudo systemctl restart nginx

至此,安装PHP7.3-FPM完成。

这里要注意:php的配置文件php.ini,路径会随PHP版本而不同,所以首先查找php.ini文件位置 命令如下

php -i | grep php.ini

命令的意思是:php -i 即显示php的详细信息,然后在其中匹配php.ini的信息,如上图找到了路径是 /etc/php/7.2/cli/php.ini。用于设置环境的PHP配置文件是/etc/php/7.3/cli/php.ini/etc/php/7.3/apache2/php.ini

现在先建个PHP文件来试一下看能不能正常跑。

vim /var/www/html/info.php

然后同样的按   i  进入编辑模式输入文件内容如下

<?php

phpinfo();

?>

保存修改,然后在浏览器访问

http://localhost/info.php

出现PHP Version 7.3.13-1+ubuntu18.04.1+deb.sury.org+1页面即成功。

最后,还有一个小地方。因为nginx与php对cgi.fix_pathinfo默认是关闭的。也就是说不打开的是不能使用pathinfo的。但是打开的话又会有严重的漏洞问题。所以要进行一点点修改以便在关闭cgi.fix_pathinfo的情况下也能使用pathinfo。

打开

sudo vi /etc/nginx/sites-available/default
          #.php$改为.php,也就是把PHP后面的$去掉。
location ~ \.php {
                include snippets/fastcgi-php.conf;
        #       增加对PathInfo的支持,防止cgi.fix_pathinfo漏洞。
                fastcgi_split_path_info ^(.+?\.php)(/.*)$;
sudo systemctl restart nginx

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!