如何通过 PHP-FPM 配置 Nginx 以使用 PHP
本分步教程将向您展示如何安装和配置 Nginx 以使用 PHP-FPM 在您的服务器上执行 PHP。
Nginx + PHP 是最流行的一组软件,可用于构建网站。本分步教程将向您展示如何安装和配置 Nginx 以使用 PHP-FPM 在您的服务器上执行 PHP。
Nginx 是 PHP-FPM 的理想组合。它是一个稳定的Web 服务器,以其令人印象深刻的性能和低资源消耗而闻名。
当您使用 PHP-FPM 时,PHP 作为一个独立的服务运行。使用这个 PHP 版本作为语言解释器意味着请求将通过 unix 套接字进行处理。Nginx 服务器将只处理 HTTP 请求,而 PHP-FPM 解释 PHP 代码。
1. 安装 Nginx
Ubuntu / Debian
因为 Nginx 在Debian和Ubuntu的默认存储库中可用,所以可以使用apt
打包系统从这些存储库安装它 。
sudo apt install nginx
CentOS
要获得最新的 Nginx 版本,CentOS 用户首先需要安装EPEL 存储库。它包含用于 CentOS 的附加软件。
sudo yum install epel-release
然后就可以安装Nginx服务器了。
sudo yum install nginx
Fedora
Nginx 在默认的 Fedora 存储库中可用,因此可以使用dnf
包管理器直接安装。
sudo dnf install nginx
相关:如何在 Linux 上安装 Nginx Web 服务器
2. 安装 PHP-FPM
Ubuntu / Debian
要在 Ubuntu 或 Debian 上安装 PHP,只需运行以下命令:
sudo apt install php-fpm
CentOS
CentOS 服务器中默认可用的 PHP 版本已过时。因此,我们需要安装第三方软件包存储库才能获取 PHP 7。
CentOS 7
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi-php74
sudo yum install php php-fpm
CentOS 8
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
sudo yum-config-manager --enable remi-php74
sudo yum install php php-fpm
3.配置NGINX使用PHP-FPM执行PHP
一旦安装了 Nginx 和 PHP,我们就可以配置 Nginx 将 PHP 请求发送到 PHP-FPM。
现在,我们需要创建一个 Nginx 服务器块配置文件来使用 FPM 运行 PHP。您可以根据您的要求创建新的 VirtualHost,因此请确保启用任何新的 VirtualHost。
sudo vim /etc/nginx/sites-available/example.com
替换 example.com
为您站点的域或 IP 地址,并将 root
指令替换为您站点的根目录。
server {
listen 80;
root /var/www/html;
index index.php index.html index.htm;
server_name example.com;
location / {
try_files $uri $uri/ =404;
}
location ~ /.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
}
保存对配置文件的更改并创建指向启用站点的目录的链接。
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com
确保指令中php7.4-fpm.sock
指定的 PHP 套接字文件(在我们的例子中)的名称fastcgi_pass
是正确的。
ls -l /var/run/php/
total 4
-rw-r--r-- 1 root root 5 Dec 1 17:43 php7.4-fpm.pid
srw-rw---- 1 www-data www-data 0 Dec 1 17:43 php7.4-fpm.sock
lrwxrwxrwx 1 root root 30 Dec 1 17:43 php-fpm.sock -> /etc/alternatives/php-fpm.sock
如果名称与 不同php7.4-fpm.sock
,只需将上面显示的服务器块中的名称替换为您服务器中的当前名称。
然后重新启动 Nginx 服务以重新加载更改。
sudo systemctl restart nginx.service
4. 测试设置
创建一个测试 PHP 文件,以便您可以验证 PHP-FPM 是否有效并与 Nginx 集成。在上面的服务器块中,我们的站点由 提供服务 /var/www/html
,因此我们将在那里创建一个测试文件:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
最后,info.php
从 Web 浏览器访问,使用您站点的域或服务器的 IP 地址。您应该会看到 PHP 配置页面:
结论
恭喜!您已经将 Nginx 设置为通过 PHP-FPM 处理 PHP 请求。
您可以从这里采取许多后续步骤。例如,您应该确保与服务器的连接是安全的。但是怎么做呢?只需按照我们的分步教程即可为您的服务器获取免费的 Let’s Encrypt SSL 证书。
The post 如何通过 PHP-FPM 配置 Nginx 以使用 PHP first appeared on Linux迷.
共有 0 条评论