在Ubuntu Nginx服务器上为WordPress安装PHP 7.3教程

222 阅读4分钟

PHP Logo

随着PHP7.1版本或更早的版本达到了生命的尽头(EOL),如果你还没有,那么你应该安装和配置PHP7.3和任何需要的扩展,本文将引导你完成在Ubuntu Nginx服务器上设置PHP7.3的过程,以及安装WordPress网站需要的和推荐的PHP扩展。

在这篇文章中,我是在一个已经配置好并运行PHP 7.2的系统上工作的。

在你开始之前,本文的步骤假设如下

  • 你正在运行Ubuntu 16.04或18.04
  • 你有sudo或root权限
  • 你的服务器运行Nginx。

1.添加PPA资源库并更新软件包列表。

运行下面的命令,将ppa:ondrej/php PPA资源库添加到系统中,并更新可用的包列表。 这个PPA包含了Ubuntu系统的最新PHP包和扩展,是我推荐的选择,尽管这些包有很多可能的来源。

sudo add-apt-repository ppa:ondrej/php
sudo apt update

这应该只需要一分钟就能完成,之后就可以安装和配置新的PHP包和任何需要的扩展。

2.安装PHP 7.3和任何需要的扩展程序。

接下来的命令将为你的系统安装php 7.3和使用最新核心分支运行WordPress网站所需的和推荐的扩展。

安装php-7.3和php7.3-fpm:

sudo apt install php7.3 php7.3-fpm

为了确保你有所有运行WordPress网站所需的和推荐的扩展(这些扩展也应该足够用于大多数其他基于PHP的CMS平台或功能),运行以下内容。

sudo apt install php7.3-common php7.3-mysql php7.3-curl php7.3-json php7.3-mbstring php7.3-xml php7.3-zip php7.3-gd php7.3-soap php7.3-ssh2 php7.3-tokenizer

WordPress所需和推荐的PHP扩展列表

WordPress在WordPress服务器环境文档中有一个优化运行WordPress所需和推荐的PHP扩展的列表,点击这里可以获得完整的列表,但为了供您参考,下面是截至2019年12月18日的列表,WordPress 5.3.1版本是最新的,PHP 7.3是推荐版本。 其中很多都包含在php7.3-common包中,这就是为什么它们没有在早期的命令中被明确添加。

PHP Extensions for WordPress

必要的扩展:

curl-执行远程请求操作。
dom -用于验证文本小部件内容和自动配置IIS7+。
exif -与存储在图像中的元数据一起工作。
fileinfo -用于检测文件上传的mimetype。
hash -用于散列,包括密码和更新包。
json -用于与其他服务器通信。
mbstring- 用于正确处理UTF8文本。
mysqli -连接到MySQL进行数据库交互。
libsodium -验证签名并提供安全的随机字节。
openssl -允许基于SSL的连接到其他主机。
pcre -提高代码搜索中模式匹配的性能。
imagick -为媒体上传提供更好的图像质量。详情见WP_Image_Editor is incoming!当Ghost Script也可用时,可以更聪明地调整图片大小(用于更小的图片)和支持PDF缩略图。
xml -用于XML解析,例如从第三方网站上解析。
zip -用于解压Plugins、Themes和WordPress更新包。

推荐的扩展:

filter- 用于安全地过滤用户输入。
gd -如果Imagick没有安装,GD图形库被用作功能有限的后备图像处理。
iconv -用于字符集之间的转换。
mcrypt -当libsodium和/dev/urandom不可用时生成随机字节。
simplexml -用于XML解析。
xmlreader -用于XML解析。
zlib -Gzip压缩和解压。

3.在Nginx配置中配置PHP 7.3

接下来,你需要更新网站的Nginx配置,以适应最近安装的PHP 7.3,如果你已经安装和配置了旧的php版本,这只需要更新Nginx配置中的一点点代码。

如果你使用默认的网站块,并且只在服务上运行一个网站,这将使你的网站文档根目录在/var/www/html/ ,那么你将需要编辑默认的配置在/etc/nginx/sites-available/default ,你可以通过发出以下命令来完成。

sudo nano /etc/nginx/sites-available/default

如果你有多个站点和配置,并且想单独应用 PHP 7.3 而不是将其添加为默认配置,那么请在与 "默认 "文件相同的目录下编辑相应的配置文件,或者如果你使用的是自定义的站点块,则在你的站点配置可能被设置的地方编辑。

Install PHP 7.4 - PHP Extensions for WordPress

用 nano(或你选择的编辑器)打开文件后,在服务器配置部分添加或修改以下代码,以配置它与 PHP 7.3 一起使用。

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock。
}

之后别忘了重启php7.3-fpm服务,以及在重启或重载Nginx之前检查Nginx配置是否有问题。

重启php7.3-fpm

sudo systemctl restart php7.3-fpm

检查Nginx配置的改变是否正确:

sudo nginx -t

Nginx Config OK

如果Nginx配置测试的结果是OK,那么可以使用以下命令重启或重新加载Nginx。

sudo systemctl restart nginx
sudo systemctl reload nginx

也可以通过运行下面的命令检查这些服务的状态,以确保它们在服务器上成功重启。 这样做之后,PHP 7.3将运行它所配置的任何站点。

sudo systemctl status php7.3-fpm nginx

Install PHP 7.4 - PHP Extensions for WordPress