如何通过PHP-FPM配置Nginx以使用PHP
Nginx+PHP是最受欢迎的软件组之一,您可以使用它来构建您的网站。本分步教程将向您展示如何使用PHP-FPM在服务器上安装和配置Nginx以执行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安装nginx
CentOS/AlmaLinux/Rocky Linux
要获得最新的Nginx版本,需要在CentOS、AlmaLinux或Rocky Linux用户首先安装EPEL存储库。
EPEL(Extra Packages for Enterprise Linux)是Fedora团队的一个开源免费社区存储库项目,为基于RHEL的Linux发行版提供高质量的附加软件包。
sudo yum-install-epel发布
然后您可以安装Nginx服务器。
sudo yum-install nginx
Fedora
Nginx在默认的Fedora存储库中可用,可以直接使用
dnf
软件包管理器。
sudo dnf安装nginx
相关:如何在Linux上安装NginxWeb服务器
2.安装PHP-FPM
Ubuntu/Debian
要在Ubuntu或Debian上安装PHP,只需运行以下命令:
sudo apt安装php-fpm
可在
默认情况下,可在CentOS服务器中使用的PHP版本已过时。出于这个原因,我们需要安装第三方软件包存储库来获得PHP7。
CentOS 7
sudo百胜安装http:
//rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config manager--启用remi-hp74
sudo百胜安装php-php-fpm
代码语言:
JavaScript
(
javascript
)
CentOS 8
sudo百胜安装http:
//rpms.remirepo.net/enterprise/remi-release-8.rpm
sudo yum-config manager--启用remi-hp74
sudo百胜安装php-php-fpm
代码语言:
JavaScript
(
javascript
)
3.使用PHP-FPM配置NGINX以执行PHP
一旦安装了Nginx和PHP,我们就可以配置Nginx将PHP请求发送到PHP-FPM。
我们需要创建一个Nginx服务器块配置文件来使用FPM运行PHP。之后,您可以根据自己的要求创建一个新的VirtualHost,从而启用任何新的VirtualHost。
sudo vim/etc/nginx/sites available/example.com
替换
example.com
与您的网站的域或IP地址,以及
根
指令与站点的根目录。
<
坚强的
>
服务器
</
坚强的
>
{
<
坚强的
>
听
</
坚强的
>
80;
<
坚强的
>
根
</
坚强的
>
/var/www/html;
<
坚强的
>
索引
</
坚强的
>
index.php index.html index.htm;
<
坚强的
>
服务器名称
</
坚强的
>
example.com;
<
坚强的
>
位置
</
坚强的
>
/ {
<
坚强的
>
try_files
</
坚强的
>
$uri$uri/=404;
}
<
坚强的
>
位置
</
坚强的
>
~\.php${
<
坚强的
>
包括
</
坚强的
>
snippets/fastcgi-hp.conf;
<
坚强的
>
fastcgi_pass
</
坚强的
>
unix:/var/run/php/php7.4-fpm.sock;
}
}
代码语言:
HTML,XML
(
xml
)
将您的更改保存到配置文件中,并创建到启用站点的目录的链接。
sudo ln-s/etc/nginx/sites-available/example.com/etc/nginx/sites-enabled/example.com
确保PHP套接字文件的名称(在我们的例子中
php7.4-fpm.sock
)中指定
fastcgi_pass
指令是正确的。
ls-l/
var
/run/php/
代码语言:
JavaScript
(
javascript
)
全部的
4.
-rw-r--r--
1.
根
5.
十二月
1.
17
:
43
php7
4.
-fpm.pid
srw-rw----
1.
www数据www数据
0十二月
1.
17
:
43
php7
4.
-fpm.sock
lrwxrwxrwx
1.
根
30
十二月
1.
17
:
43
php-fpm.sock->
等
备选方案/php-fpm.sock
代码语言:
JavaScript
(
javascript
)
如果名称不同于
php7.4-fpm.sock
,只需将上面显示的服务器块中的它替换为服务器中的当前块即可。
然后重新启动Nginx服务以重新加载更改。
sudo
systemctl
重新启动
nginx
服务
代码语言:
CSS
(
css
)
4.测试设置
创建一个测试PHP文件,以验证PHP-FPM是否工作并且是否与Nginx集成。在上面的服务器块中,我们的网站由
/var/www/html
,所以我们将在那里创建一个测试文件:
回响
“”
|sudo三通/
var
/www/html/info.php
代码语言:
PHP
(
php
)
最后,访问
info.php
通过web浏览器,使用您的网站的域或服务器的IP地址。您应该看到PHP配置页面:

结论
祝贺您已经将Nginx设置为通过PHP-FPM处理PHP请求。
接下来你可以采取一些步骤。例如,您应该确保与服务器的连接是安全的。但是怎么做呢?
按照我们的分步教程为您的服务器获取免费的Let's Encrypt SSL证书。
创建自己Linux发行版的5个最佳工具
Linux是一个开源内核,以其灵活性和可扩展性而闻名。许多人选择创建自己的Linux发行版,专门满足他们的需求。 让我们来看看可以用来创建您自己的Linux发行版的最佳工具。这些工具专为您定制操作系统、简化包管理、配置和许多其他重要功能而设计。 1. Linux Live Kit Linux Live Kit是一个强大的工具,使用户能够创建定制的Linux系统,以满足他们的特定需求。 实时Linu
如何将USB设备连接到iPad
USB支持对于任何现代智能手机或平板电脑来说都是必不可少的,而苹果的iPad在这方面做到了。您可以连接U盘、外部存储驱动器、键盘、相机等,让你的iPad更适合工作 然而,您可能会怀疑将USB设备连接到iPad,特别是因为我们现在有带Lightning和USB—C端口的iPad。下面,我们将解释如何将USB设备连接到iPad。 如何用Lightning端口将USB设备连接到iPad 现代iPad配备
如何修复Mac上的“过滤器失败”打印机错误
如果你的打印机在从Mac发送打印作业时抛出“Filter Failed”错误,那么你并不是一个人。此问题影响爱普生、佳能、惠普和其他品牌的打印机。值得庆幸的是,修复它就像重置macOS打印系统和安装更新的驱动程序一样简单。 当天的视频 滚动以继续浏览内容 什么原因导致“Filter Failed”打印机错误? 打印作业出错并显示“已停止- '过滤器'失败”消息或类似信息的最常见罪魁祸首是损坏或不兼
MacBook的麦克风坏了?5个修复方法
当你正在召开重要会议或录制播客时,你的MacBook拒绝接收你的声音,这是非常令人沮丧的。无论是软件缺陷还是需要调整的简单设置,我们都能满足您的需求。 当天的视频 滚动以继续浏览内容 1. 使用声音输入设置测试麦克风 测试MacBook的麦克风,看看它是否工作正常,排除任何硬件问题,总是一个不错的决定。以下是你需要做的: 单击 苹果菜单 在菜单栏中,选择 系统设置 从下拉菜单中。 选择 声音 从侧
Linux基金会2023年年度报告解读
您可能听说过Linux基金会,仅凭其名称,就可以很容易地将其与Linux的所有内容直接联系起来。对于那些不知情的人来说,这可能会让人联想到一组Linux技术奇才不知疲倦地探索Linux内核及其无数发行版的复杂性。好吧,这与现实无关。 因此,在我们深入研究这些数字并探索Linux基金会在2023年是如何使用资金的之前,让我们首先了解一下该组织的真正立场。 Linux基金会:不仅仅是关于Linux L