如何通过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上控制CPU风扇速度
CPU风扇速度通常是自动管理的。这在很多方面都是有益的——它确保您的系统能够根据当前温度和节能设置进行充分冷却——但有时,这还不够。 手动调整CPU风扇速度是一种很好的方式,可以根据您的喜好优先考虑静音或冷却等好处。最棒的是,在fancontrol或其他风扇速度控制应用程序的帮助下,您可以在Linux系统上轻松实现这一点。 在Linux上安装风扇转速控制应用程序 如果您想在Linux中采用最简单的
如何在Ubuntu上安装Nextcloud:分步安装指南
Nextcloud是一个自托管的文件共享应用程序服务器,允许您从一个集中的位置存储文件、文档和联系人。它是一个真正的开源平台,类似于Dropbox、Google Drive、OneDrive和其他专有的在线存储服务。 大玩家的问题是,你不知道你的数据到底在哪里,也不知道它是否安全,不会被其他人访问。因此,当涉及到一些你不想存储在某些第三方服务器上的机密数据时,最好选择一些你可以完全控制的数据。 使
Maestral Dropbox客户端:如何在Linux上安装和使用
Dropbox是一种流行的云服务,用于在设备之间同步文件,但并非所有用户都对官方的Dropbox客户端应用程序感到满意。许多人觉得它过于臃肿,在一个似乎只会增加尺寸的包中提供了不必要的功能或限制。 Maestral是一个轻量级的开源Dropbox客户端,适用于用Python编写的Linux和macOS。它的主要目标是为客户端提供Dropbox不再直接支持的平台和文件系统。 此外,Maestral提
WattOS R13在Debian 12 Bookworm上推出折扣
一些轻量级的Linux发行版,如Lubuntu、Linux Lite、Peppermint等,旨在振兴旧电脑。WattOS可能不会在这些人中敲响那么响亮的钟声,但它是一颗隐藏的宝石。 它包含了你在轻量级操作系统中想要的所有功能,可以很容易地成为你的新宠,让你的旧电脑重获新生。 这是一个基于Debian稳定分支的Linux发行版,专注于能源效率和低资源消耗——WattOS押注于Openbox窗口管理
如何在Linux上消除闪烁的不允许标记
当输入设备不正常工作时,通常会出现闪烁的“不允许”标志。但情况并不总是如此;即使你没有发送任何垃圾信息,这个符号也会困扰你。 尝试以下提示和技巧来解决Linux系统上的输入问题,并永远消除"不允许"警报。 为什么会出现不允许的标志? 闪烁的"不允许"标志是注册无效输入时在屏幕底部出现的警告。任何输入设备都可以触发它,包括但不限于键盘、鼠标,甚至带有控制按钮的耳机。如果您重复输入无效输入,通常会出现