PHP-FPM配置文件示例(简化版):
[global] pid = /var/run/php-fpm.pid error_log = /var/log/php-fpm.log log_level = notice [www] user = www-data group = www-data listen = /var/run/php-fpm.sock listen.owner = www-data listen.group = www-data listen.mode = 0660 pm = dynamic pm.max_children = 50 pm.start_servers = 10 pm.min_spare_servers = 5 pm.max_spare_servers = 20 pm.max_requests = 500通俗讲解:
[global]
- 这是一个全局配置区域,里面的设置对整个PHP-FPM服务都有效。
pid = /var/run/php-fpm.pid:这行代码指定了PHP-FPM的进程ID文件的位置。这个文件记录了PHP-FPM主进程的ID,方便我们管理和查找。error_log = /var/log/php-fpm.log:这里设置了PHP-FPM的错误日志文件的位置,如果PHP-FPM出错了,错误信息会被记录到这个文件里。log_level = notice:设置日志的级别,只记录比较重要的信息,像是一些通知信息。
[www]
- 这是一个特定的进程池配置区域,通常命名为"www",但也可以是其他名字。
user = www-data和group = www-data:这两行设置了运行PHP-FPM进程的用户和用户组,通常是www-data,这样可以保证PHP-FPM进程有足够的权限去访问网站的文件。listen = /var/run/php-fpm.sock:这里设置了PHP-FPM监听的地址,它是一个Unix套接字文件,Web服务器会通过这个文件与PHP-FPM通信。listen.owner、listen.group和listen.mode:这些设置确保了套接字文件的访问权限和安全性。pm = dynamic:这设置了PHP-FPM的进程管理模式为动态,意味着它会根据需求自动调整子进程的数量。pm.max_children = 50:最多可以有50个子进程同时运行来处理请求。pm.start_servers = 10:PHP-FPM启动时就会创建10个子进程等待处理请求。pm.min_spare_servers = 5和pm.max_spare_servers = 20:这两个设置保证了空闲子进程的数量在5到20之间,以应对突发的请求。pm.max_requests = 500:一个子进程在处理了500个请求后会自动重启,这有助于防止内存泄漏和保持系统的稳定性。
通过这个配置文件,我们可以让PHP-FPM更加高效、稳定地运行,从而确保我们的网站能够快速响应访客的请求。