本教程将帮助您在 Ubuntu 18.04 (Bionic) LTS 系统上使用 PHP-FPM/FastCGI 安装 Nginx Web 服务器。在本教程中,我们使用 PHP 7.3 并使用 PHP-FPM 和 FastCGI 配置 Nginx。
Nginx 安装
Nginx 软件包在默认存储库中可用。使用 sudo 权限帐户通过 SSH 连接到 Ubuntu 18.04 LTS 系统,并从官方存储库安装 Nginx Web 服务器。
sudo apt update
sudo apt install nginx
PHP安装
对于 PHP 安装,我们建议使用ppa:ondrej/phpPPA,为 Ubuntu 系统提供最新的 PHP 版本。使用以下几个命令将 PPA 添加到您的系统。
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
然后安装 PHP 7.3(编写本教程当天可用的最新版本)。只需执行以下命令即可安装 PHP 和 PHP-FPM 软件包。
apt update
sudo apt install php7.3 php7.3-fpm
Note:- 当您使用 PHP-FPM 时。所有 PHP 模块配置都位于 /etc/php/7.3/fpm 目录下。您可以阅读更多有关启用/禁用 PHP 模块.
安装以上软件包后,php7.3-fpm 服务将自动启动。您可以通过在终端上输入以下命令来进行确认。
sudo systemctl status php7.3-fpm
● php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-11-21 03:36:08 UTC; 36s ago
Docs: man:php-fpm7.3(8)
Main PID: 9054 (php-fpm7.3)
Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
Tasks: 3 (limit: 4704)
CGroup: /system.slice/php7.3-fpm.service
├─9054 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf)
├─9069 php-fpm: pool www
└─9070 php-fpm: pool www
Nov 21 03:36:08 tecadmin systemd[1]: Starting The PHP 7.3 FastCGI Process Manager...
Nov 21 03:36:08 tecadmin systemd[1]: Started The PHP 7.3 FastCGI Process Manager.
Nginx 配置
让我们创建一个 Nginx 虚拟主机来运行 FPM/FastCGI。在本教程中,我们使用默认的 VirtualHost。在文本编辑器中编辑 VirtualHost 主机配置文件。您可以根据您的要求创建新的 VirtualHost,因此请确保启用任何新的 VirtualHost。
sudo vim /etc/nginx/sites-available/example.com
使用以下基本 Nginx 虚拟主机配置和 php fpm 设置。更新配置如下。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
server {
听 80;
根 /var/www/html;
指数 index.php index.html index.htm;
服务器名称 example.com;
地点 / {
尝试文件 $uri $uri/ =404;
}
地点 ~ \.php$ {
包括 snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
}
}
|
保存对配置文件的更改并创建指向站点启用目录的链接。
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com
然后重新启动 Nginx 服务以重新加载更改。
sudo systemctl restart nginx.service
测试设置
创建一个 PHP 脚本phpinfo()函数并将其放置到您的服务器文档根目录中。使用下面的命令来做到这一点。
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
现在,使用您在 Nginx VirtualHost 中配置的域的服务器 IP 地址(默认 VirtualHost)访问 info.php。
向下滑动页面可以看到数值$_SERVER['SERVER_SOFTWARE']。这将显示网络服务器的详细信息。
结论
您已在 Ubuntu 18.04 (Bionic) LTS 上成功配置了带有 PHP-FPM 的 Nginx Web 服务器。您现在可以从您的服务器托管网站。