首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏友儿

    PHP-FPM

    PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置。 为什么会出现php-fpm? fpm的出现全部因为php-fastcgi出现。 安装 PHP在 5.3.3 之后已经把php-fpm并入到php的核心代码中了。所以php-fpm不需要单独的下载安装。 要想php支持php-fpm,只需要在编译php源码的时候带上 --enable-fpm 就可以了。 全局配置 在Centos中,PHP-FPM 的主配置文件是 /etc/php7/php-fpm.conf。 指定一段时间内有指定个子进程失效了,PHP-FPM重启: #在指定的一段时间内,如果失效的PHP-FPM子进程数超过这个值,PHP-FPM主进程将优雅重启。

    1.3K21编辑于 2022-09-11
  • 来自专栏XRSec.Blog

    PHP FPM Docker

    /bin/php /www/env/php74 \ && ln -sf /www/server/php74/sbin/php-fpm /www/env/php74-fpm \ && ln /php74-pear \ && rm -rf /usr/bin/php74 \ && rm -rf /usr/bin/php74-fpm \ && rm -rf /usr/bin /sbin/php-fpm /www/env/php56-fpm \ && ln -sf /www/server/php56/bin/php /www/env/php56 \ && ln 5.6.40 & FPM PHP 7.4.16 & FPM PHP 5.6.40 & PHP 7.4.16 & FPM /www/server/php74/bin/php /www/server/php74 /sbin/php-fpm /www/server/php74/lib/php.ini /www/server/php56/bin/php /www/server/php56/sbin/php-fpm

    1.2K30编辑于 2022-03-12
  • 来自专栏运维相关文档

    重启php-fpm

    /bin/sh #set -x killall php-fpm sleep 2 echo "[$(date +%Y-%m-%d' '%H:%M:%S)] Php-fpm restart" >> /tmp /pfpm_time.txt /usr/local/php5/sbin/php-fpm

    1.9K50发布于 2021-05-19
  • 来自专栏linux系统运维

    php-fpm的pool,php-fpm慢执行日志,open_basedir,php-fpm进程管理

    php-fpm的pool: php-fpm的pool是这个php-fpm服务的池子,php-fpm支持定义多个池子,能够监听多个不同的sock或者监听不同的ip。 配置pool可以在php-fpm的主配置文件里进行配置: vim /usr/local/php-fpm/etc/php-fpm.conf 在配置文件中增加如下内容: [aming.com] listen /php-fpm.d/ 进入到该目录下: cd /usr/local/php-fpm/etc/php-fpm.d/ 创建一个www.conf文件: vim www.conf 然后复制php-fpm主配置文件里 /usr/local/php-fpm/etc/php-fpm.conf test is successful [root@aming-01 php-fpm.d]# /etc/init.d/php-fpm : cat /usr/local/php-fpm/var/log/php_errors.log 然后我们把pool文件修改正确,再次重启php-fpm,接着再进行访问,状态码为200就没问题了: php-fpm

    1.4K40发布于 2018-06-14
  • 来自专栏硬核项目经理的专栏

    了解PHP-FPM

    在服务器上,当我们查看php进程时,全都是php-fpm进程,大家都知道这个就是php的运行环境,那么,它到底是个什么东西呢? PHP-FPM简介 PHP-FPM,就是PHP的FastCGI管理器,用于替换PHP FastCGI的大部分附加功能,在PHP5.3.3后已经成为了PHP的标配。 它们都是指向的PHP运行程序。 再说得通俗一点,我们运行php脚本用的是 php aaa.php php-fpm就相当于是这个php命令。 FastCGI是启动一个socket接口,服务器应用不需要自己去运行php,只需要向这个socket接口提交请求就可以了。 php-fpm在编译php时需要添加--enable-fpm。 一些通用的集成安装包如lnmp、phpStudy等都会默认编译并使用php-fpm,毕竟是标配。

    1.8K20发布于 2019-11-19
  • 来自专栏Laoqi's Linux运维专列

    Zabbix监控php-fpm

    php-fpm和nginx一样内建了一个状态页,对于想了解php-fpm的状态以及监控php-fpm非常有帮助。 为了后续的zabbix监控,我们需要先了解php-fpm状态页是怎么回事。 启用php-fpm状态功能及Nginx配置 cat /usr/local/php-5.5.10/etc/php-fpm.conf | grep status_path pm.status_path = slow requests – 启用了php-fpm slow-log,缓慢请求的数量 监控php-fpm脚本 vim /etc/zabbix/alertscripts #! /php-fpm_status.sh mactive UserParameter=listen.queue.len,/etc/zabbix/alertscripts/php-fpm_status.sh /alertscripts/php-fpm_status.sh conn UserParameter=max.children.reached,/etc/zabbix/alertscripts/php-fpm_status.sh

    2.1K50发布于 2018-05-09
  • 来自专栏devops探索

    php-fpm配置参考

    默认:安装路径 #INSTALL_PREFIX#/log/php-fpm.log。 log_level string 错误级别。 daemonize boolean 设置 FPM 在后台运行。设置“no”将 FPM 保持在前台运行用于调试。默认值:yes。 运行配置区段 在FPM中,可以使用不同的设置来运行多个进程池。 类似 Apache 的 mpm_prefork 中 MaxClients 的设置和 普通PHP FastCGI中的 PHP_FCGI_CHILDREN 环境变量。 如果设置为 '0' 则一直接受请求,等同于 PHP_FCGI_MAX_REQUESTS 环境变量。默认值:0。 pm.status_path string FPM 状态页面的网址。 默认值:#INSTALL_PREFIX#/log/php-fpm.log.slow。 rlimit_files int 设置文件打开描述符的 rlimit 限制。默认值:系统定义值。

    1.3K20发布于 2020-07-31
  • 来自专栏python3

    Prometheus监控PHP-FPM

    一、概述 启用php-fpm状态功能 php-fpm和nginx一样内建了一个状态页,对于想了解php-fpm的状态以及监控php-fpm非常有帮助。 为了后续的Prometheus监控,我们需要先了解php-fpm状态页是怎么回事。 slow requests –启用了php-fpm slow-log,缓慢请求的数量 二、安装php-fpm-exporter 封装docker 由于在dockerhub里面找的一些php-fpm-exporter 所以我决定自己封装一个docker 下载php-fpm-exporter https://github.com/bakins/php-fpm-exporter/releases 下载二进制文件 ? 创建目录/opt/php-fpm-exporter,结构如下: ./ ├── dockerfile ├── php-fpm-exporter.linux.amd64 └── run.sh 说明: php-fpm-exporter.linux.amd64

    2.3K10发布于 2020-05-27
  • 来自专栏正则

    fastcgi和php-fpm

    讲到PHP开发,就一定会提到fastcgi和php-fpm,这两个东西对PHP的性能有着至关重要的作用。 在百度实习的这段时间里,用到的ODP环境就是用的php-fpm,但一直以来对它一无所知,甚至对整个PHP都概念模糊,这两天任务提前完成,借此机会对PHP做一点深入的了解。 php-fpm 磨刀不误砍柴工,前面的讲解只为引出php-fpmphp-fpm是做什么的呢?其实就是用来辅助fastcgi的。 2.若直接杀死php-cgi,PHP便无法运行 php-fpm完美解决了上述不足,是一款专用的fastcgi管理器。 总之,php-fpm的作用就是专门管理PHP中的fastcgi,使PHP在高并发的情况下也能安全稳定的与Web服务器合作,完成请求响应过程。

    1.6K10编辑于 2021-12-05
  • 来自专栏PHPer技术栈

    php-fpm优化总结

    Nginx 与 php-fpm 运行流程 Nginx 查看 nginx.conf 配置文件 加载 nginx 的 fast-cgi 模块 php-fpm 监听 127.0.0.1:9000 php-fpm 接收到请求,启用 worker 进程处理请求 php-fpm 处理完请求,返回给 nginx nginx 将结果通过 http 返回给浏览器 Nginx 与 php-fpm 通信机制 www.test.com Nginx 与 php-fpm 的结合 在 Linux 上,nginx 与 php-fpm 的通信有 tcp socket 和 unix socket 两种方式。 php-fpm reload 可以平滑重启而不影响生产系统的 php 脚本运行,每 15 分钟 reload 一次 0-59/15 * * * * /usr/local/php/sbin/php-fpm 这个时长配置可以在 php.ini(max_execution_time)或 php-fpm.conf 中配置均可,为了不影响全局配置,可在 php-fpm.conf 中实现 crontab 定时任务把

    1.7K40编辑于 2022-11-22
  • 来自专栏Java架构师必看

    php-fpm – 配置详解

    php5.3自带php-fpm /usr/local/php/etc/php-fpm.conf pid = run/php-fpm.pid pid设置,默认在安装目录中的var/run/php-fpm.pid ,建议开启 error_log = log/php-fpm.log 错误日志,默认在安装目录中的var/log/php-fpm.log log_level = notice 错误级别. 进程数如果超过 emergency_restart_threshold个,php-fpm就会优雅重启。 listen = 127.0.0.1:9000 fpm监听端口,即nginx中php处理的地址,一般默认值即可。 等同于 PHP_FCGI_MAX_REQUESTS 环境变量. 默认值: 0. pm.status_path = /status FPM状态页面的网址. 如果没有设置, 则无法访问状态页面.

    2K20发布于 2021-03-22
  • 来自专栏h0cksr的小屋

    PHP-FPM && PHP-CGI && FASTCGI

    因为环境变量在后面 PHP-FPM 里有重要作用,之后写代码也会写到这个结构。type 的其他情况,大家可以自己翻文档理解理解。 PHP-FPM 那么,PHP-FPM又是什么东西? 但环境变量的作用不仅是填充_SERVER数组,也是告诉fpm:“我要执行哪个PHP文件”。 PHP-FPM拿到fastcgi的数据包后,进行解析,得到上述这些环境变量。 PHP-CGI PHP-CGI和上面的PHP-FPM差不多,不过不同在于PHP-FPM解析的是fastcgi协议而PHP-CGI解析的是cgi协议 一些PHP-FPM漏洞 还有一些PHP-FPM的漏洞在 WHOAMI大佬的文章浅入深出 Fastcgi 协议分析与 PHP-FPM 攻击方法都有讲到使用方法,以下是文章中收集的内容目录 PHP-FPM 未授权访问漏洞 SSRF 中对 FPM/FastCGI /浅入深出-Fastcgi-协议分析与-PHP-FPM-攻击方法/

    97740编辑于 2023-05-17
  • 来自专栏阿dai_linux

    php-fpm的pool、PHP慢执行日志、open_basedir、php-fpm进程管理

    php-fpm增加pool 编辑php-fpm配置文件: [root@adailinux etc]# vim /usr/local/php-fpm/etc/php-fpm.conf …… [adai.com = /usr/local/php-fpm/var/run/php-fpm.pid error_log = /usr/local/php-fpm/var/log/php-fpm.log include = php-fpm done 配置完成后使用ps查看php-fpm进程信息。 12.22 php-fpm的慢执行日志 开启慢执行日志: [root@adailinux php-fpm.d]# vim /usr/local/php-fpm/etc/php-fpm.d/www.conf [root@adailinux php-fpm.d]# /usr/local/php-fpm/sbin/php-fpm -t [root@adailinux php-fpm.d]# /etc/init.d

    91920发布于 2019-04-03
  • 来自专栏Laoqi's Linux运维专列

    Php-fpm相关配置

    /tmp/php-fcgi.sock #listen = 127.0.0.1:9000 listen.mode = 666 user = php-fpm group = php-fpm pm = dynamic php-fpm/var/run/php-fpm.pid error_log = /usr/local/php-fpm/var/log/php-fpm.log include = etc/php-fpm.d -03 etc]# mkdir php-fpm.d 然后逐一配置每个站点的php-fpm: 配置haha.conf [[email protected]03 php-fpm.d]# cat haha.conf 测试+重载(-t && -s reload) 再次检查: [[email protected]03 php-fpm.d]# ps aux | grep php-fpm php-fpm 5404 ] php-fpm.d]# ls /usr/local/php-fpm/var/log/haha_slow.log /usr/local/php-fpm/var/log/haha_slow.log 在这儿

    1.3K50发布于 2018-05-09
  • 来自专栏西里网CSDN博客

    PHP-FPM 性能优化

    优化 PHP 配置: memory_limit:根据应用需求设置内存限制。 max_execution_time:设置脚本最大执行时间。 使用静态文件缓存: 对静态文件使用缓存,减少 PHP-FPM 处理请求的压力。 定期监控与调优: 使用如 top, htop, strace 等工具监控性能,根据实际情况调优。

    43910编辑于 2025-03-25
  • 来自专栏运维相关文档

    重启php-fpm1

    bin/sh set -x if [ -e /var/lock/subsys/502 ] then killall -9 curl 2>/dev/null killall -9 php-fpm 2>/dev/null /usr/local/php5/sbin/php-fpm >/dev/null echo "[ `date +'%h %d %T'` ] PHP-FPM died touch /var/lock/subsys/502 if [ `curl --connect-timeout 5 -I http://eds.test.com/monitorphp.php = '0' ] then killall -9 php-fpm 2>/dev/null /usr/local/php5/sbin/php-fpm >/dev /null echo "[ `date +'%h %d %T'` ] PHP-FPM died with 502 bad gateway, all processes restarted

    1.1K30发布于 2021-05-19
  • 来自专栏阿dai_linux

    LNMP架构介绍、安装PHPphp-fpm

    PHP-FPM PHP-FPM是一个PHP FastCGI管理器,是只用于PHP的,可以在 http://php-fpm.org/download 下载。 而PHP-FPM的出现多少缓解了一些问题,但PHP-FPM有个缺点就是要重新编译,这对于一些已经运行的环境可能有不小的风险(refer),在php 5.3.3中可以直接使用PHP-FPM了。 PHP-FPM与spawn-CGI对比 PHP-FPM的使用非常方便,配置都是在PHP-FPM.ini的文件内,而启动、重启都可以从php/sbin/PHP-FPM中进行。 php-fpm相关命令: 执行PHP相关命令的两种方式: 方法1: [root@adailinux php-fpm]# /usr/local/php-fpm/sbin/php-fpm -m 方法2: [root@adailinux php-fpm]# /usr/local/php-fpm/bin/php -m php-fpm配置文件语法检测: [root@adailinux php-fpm]# /

    2.3K20发布于 2019-04-03
  • 来自专栏全栈程序员必看

    LAMP配置-php-fpm.conf

    php-fpm.conf默认包含/usr/local/php72/etc/php-fpm.d/*.conf php-fpm.conf文件内容比较简单 ;;;;;;;;;;;;;;;;;;;;; ; FPM Configuration ; ;;;;;;;;;;;;;;;;;;;;; include=/usr/local/php72/etc/php-fpm.d/*.conf www.conf内容才是真正的配置项

    65120编辑于 2022-09-06
  • 来自专栏PHP全栈技术

    PHP-FPM发展史

    PHP-CGI PHP-CGI就是CGI协议的php版本实现。 而后来的PHP-FPM则完美解决了这两个问题并且其他方面表现也更强劲。 Web服务器内置模块 后来出现了一种比较高效的方式:Web服务器内置模块。 什么是PHP-FPM FastCGI是一个协议,PHP-FPMPHP版本协议的实现。是FastCGI的一种进程管理工具。 PHP-FPM的工作原理 当前PHP-FPm启动时,首先会创建一个master进程,负责请求的分发,初始化环境,加载配置文件等一些初始化操作,然后根据配置的设定启动多个woker进程 当请求过来时,master 当改变了php.ini配置文件,不用重启PHP-FPM,最新的woker则采用的是最新的配置,这样也做到了平滑过渡。

    99220编辑于 2022-03-14
  • 来自专栏Laoqi's Linux运维专列

    nginx之php-fpm优化

    1.2 查询一个php占用的内存方法: pmap $(pgrep php-fpm | head -1) 二、php-fpm的配置公式: pm.start_servers = min_spare_servers + (max_spare_servers - min_spare_servers) / 2 三、php-fpm优化方法: php-fpm存在两种方式,一种是直接开启指定数量的php-fpm进程,不再增加或者减少 —静态; 另一种则是开始时开启一定数量的php-fpm进程,当请求量变大时,动态的增加php-fpm进程数到上限,当空闲时自动释放空闲的进程数到一个下限—动态。 3.1 下面4个参数的意思分别为: pm.max_children:静态方式下开启的php-fpm进程数量;在动态方式下他限定php-fpm的最大进程数(这里要注意pm.max_spare_servers pm.min_spare_servers:动态方式空闲状态下的最小php-fpm进程数量。 pm.max_spare_servers:动态方式空闲状态下的最大php-fpm进程数量。

    5.2K81发布于 2018-05-09
领券