php-fpm 启动

php-fpm 启动

php-fpm 启动

PHP-FPM(PHP FastCGI Process Manager)是 PHP 应用程序请求的管理器,它负责处理来自 Web 服务器的 PHP 请求。在使用 Nginx 等 Web 服务器时,通常会使用 PHP-FPM 来处理 PHP 脚本的执行。

为什么使用 PHP-FPM

传统的 CGI 模式每次请求都会启动一个新的 PHP 进程,造成资源浪费。而 PHP-FPM 则可以通过管理池中的多个 PHP 进程来处理请求,提高性能并减少启动时间,有助于处理高流量的网站。

PHP-FPM 的配置文件

PHP-FPM 的配置文件通常位于 /etc/php/{version}/fpm/php-fpm.conf,这里以 PHP 7.4 为例。配置文件中包含了 PHP-FPM 的全局设置,如进程池数量、用户组、监听方式等。

以下是 PHP-FPM 的默认配置文件示例:

[global]
pid = /var/run/php-fpm/php-fpm.pid
error_log = /var/log/php-fpm/error.log

[www]
user = www-data
group = www-data
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = www-data
listen.group = www-data
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

在上面的配置文件中,pm.max_children 表示每个进程池中最多可以有多少个 PHP 进程,pm.start_servers 表示初始启动的 PHP 进程数,pm.min_spare_serverspm.max_spare_servers 分别表示 PHP 进程池中最少和最多可以保留的闲置进程数。

启动 PHP-FPM

启动 PHP-FPM 可以使用以下命令:

sudo systemctl start php7.4-fpm

其中,php7.4-fpm 是 PHP-FPM 的服务名称,具体名称可能因 PHP 版本而异。

查看 PHP-FPM 运行状态

可以使用以下命令查看 PHP-FPM 的运行状态:

sudo systemctl status php7.4-fpm

如果 PHP-FPM 正常运行,将看到类似以下输出:

● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2021-09-03 08:00:00 UTC; 5s ago
     Docs: man:php-fpm7.4(8)
  Process: 1234 ExecStart=/usr/sbin/php-fpm7.4 --nodaemonize --fpm-config /etc/php/7.4/fpm/php-fpm.conf (code=exited, status=0/SUCCESS)
 Main PID: 1234 (php-fpm7.4)
   Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
    Tasks: 3 (limit: 1124)
   Memory: 11.9M
   CGroup: /system.slice/php7.4-fpm.service
           ├─1234 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
           ├─1235 php-fpm: pool www
           └─1236 php-fpm: pool www

在这个输出中,Active: active (running) 表示 PHP-FPM 正在运行,Processes active 表示活跃的 PHP 进程数,idle 表示空闲的 PHP 进程数。

重启 PHP-FPM

如果需要重新加载配置文件或者重启 PHP-FPM,可以使用以下命令:

sudo systemctl restart php7.4-fpm

停止 PHP-FPM

要停止 PHP-FPM 服务,可以使用以下命令:

sudo systemctl stop php7.4-fpm

总结

PHP-FPM 是一个高效的 PHP 进程管理器,通过管理 PHP 进程池可以提高网站性能和节省资源。在使用 Nginx 等 Web 服务器时,结合 PHP-FPM 可以更好地处理 PHP 请求。通过本文的介绍,您可以了解如何启动、停止和重启 PHP-FPM 服务,并查看其运行状态。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程