如何通过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证书。
Wine 9.0经过一年的发展终于问世
Wine开发团队宣布了备受期待的Wine 9.0版本,这标志着Linux和类Unix系统的Windows兼容性层的一个重要里程碑。 Wine 9.0的主要亮点 这个稳定的版本包含了一年的开发,包括7000多项旨在增强用户体验和系统性能的个人更改。 WoW64体系结构 此版本中的一个突出功能是新的WoW64(Windows 64位上的Windows 32位)体系结构。这一关键开发使32位Window
Apple Watch是防水的吗?避免水损坏你的手表
Apple Watch已经成为许多人生活中不可或缺的一部分,提供了从健康跟踪到无缝连接的广泛功能。然而,尽管Apple Watch拥有令人印象深刻的功能,但有一个问题仍然困扰着用户:Apple Watch真的是防水的吗? 事实证明,答案并不像简单的是或否那么简单。下面,我们将解开Apple Watch防水特性的复杂性,并提供关于您可以使用可穿戴设备执行哪些基于水的活动而不会造成任何潜在的水损害的见
使用Plasma 6的全球主题可能带来严重风险
首先—— 没有必要不必要的恐慌! 如果进入设置下载并安装 外部全球主题 这不是你在设置了令人印象深刻的Plasma 6桌面环境后的第一步,你已经清楚了。其次,需要注意的是,KDE团队是这个问题的核心。这是独家新闻。 АReddit用户提醒(此处和此处参考)Plasma 6存在重大问题。安装特定的外部全局主题会触发的执行 rm-rf/ ”。该命令以其简单性和潜在的大范围损坏而闻名,它会擦除驱动器上的
拉卡5.0为复古游戏爱好者发布
拉卡是一款轻量级操作系统,旨在将树莓派等小型电脑转换为全面的复古游戏机,最近推出了5.0版本。这个新版本增加了许多更新和改进,有望进一步改善粉丝对经典游戏的游戏体验。 拉卡5.0的核心基于LibreELEC 11.0,确保了稳定高效的运行环境。此版本的主要变化包括将RetroArch(模拟器、游戏引擎和媒体播放器的前端)更新到1.17.0版本。它是拉卡游戏体验的支柱,允许抛光的界面和对许多模拟器核
AirPods无法连接Chromebook?尝试这些修复
Chromebook可能不是使用最广泛的笔记本电脑系列,但尽管如此,很难忽视它在用户生活中的实用性。尽管它的功能有限,但许多人在最大程度上使用它,从听音乐到观看电影和视频。 将您的Chromebook与AirPods结合起来,您将享受音频待遇。 但是,当你无法将AirPods连接到Chromebook时会发生什么呢?不必担心,因为您可以快速尝试以下六个故障排除步骤: 1.重启Chromebook