天天看点

php-fpm命令翻译

使用php-fpm,修改了php.ini配置,必须重启php-fpm。php-fpm应该是和web服务器分离的,可能不一定需要重启nginx等。

php-fpm的配置,可覆盖 php.ini 的配置。

当php.ini中的配置不生效,就应该想到还有php-fpm.conf。它可以配置php.ini,也可以有自己的特有的配置。例如,前面转载过的文章中,关于一个请求时间的配置:

max_execution_time 是php.ini中设置的,脚本最大执行时间

request_terminate_timeout 是php-fpm.conf中设置,最大执行时间。这个选项更重要!

name - 名称

php-fpm - PHP FastCGI Process Manager 'PHP-FPM'(php的fastcgi 进程管理器)

synopsis - 大纲,摘要

php-fpm [options]

description - 描述

PHP是一个广泛使用的通用脚本语言,尤其适合于Web开发,并可以嵌入到HTML中。这是php的一个变体,运行在后台作为一个守护进程,监听CGI请求。输出记录在 '/usr/local/var/log/php-fpm.log' 日志。

大多数的选项设置在配置文件中。配置文件是 '/usr/local/etc/php/7.1/php-fpm.conf'。默认情况下,php-fpm响应监听在localhost的http端口为9000的CGI请求。因此,php-fpm期望web服务器将'.php' 文件的请求转发到 9000 端口,你应该适当的配置你的web服务器配置。

options - 选项

-C// 不将工作目录切换到 '脚本目录'
--php-ini | -c path | file // 在指定的 'path' 中查找php.ini | 直接使用指定的php.ini 'file'
--no-php-ini | -n // 不使用 'php.ini' 文件
--define foo[=bar] | -d foo[=bar]// 定义INI配置项
-e // 为debugger/profiler生成额外的扩展信息
--help | -h // 命令帮助
--info | -i // PHP信息和配置
--modules | -m // 显示编译的模块
--version | -v // 显示版本
-p // 指定替代的路径前缀(默认是 '/usr/local/Cellar/php71/7.1.0-rc.3_8'),结合其他选项,相对的就是该路径
--pid | -g file// 指定 'PID' 文件位置
--fpm-config | -y file// 指定替代的FastCGI进程管理器配置文件(默认是 '/usr/local/etc/php/7.1/php-fpm.conf')
--test | -t // 测试 FPM 配置文件并退出。如果调用2次 '-tt',在退出前打印配置
--daemonize | -D // 强制在后台运行,并忽略配置文件中守护进程的配置选项
--nodaemonize | -F // 强制在前台运行,并忽略配置文件中守护进程的配置选项
--force-stderr | -O // 在前台运行模式下,强制输出到标准错误输出(stderr),即使标准错误输出(stderr)不是一个 'TTY'(设备)
--allow-to-run-as-root | -R // 允许进程池以root用户运行(默认非root运行)
           

files - 文件

php-fpm.conf // php-fpm 守护进程的配置文件

php.ini // 标准php配置文件

examples - 示例

对于任意使用 'init.d' 作为主进程管理的类unix系统,应该使用'init'脚本提供php-fpm守护进程的启动和停止。
sudo /etc/init.d/php-fpm start
对于任意使用 'systemd' 作为主进程管理的类unix系统,应该使用'unit'文件提供php-fpm守护进程的启动和停止。
sudo systemctl start php-fpm.service
如果你的安装没有适合的初始化脚本,启动php-fpm不需要任何参数。默认以守护进程启动(后台进程)。'/usr/local/var/run/php-fpm.pid' 文件决定php-fpm是否已经启动和运行。一旦启动,php-fpm会响应几个POSIX信号:
SIGINT,SIGTERM - 立即停止
SIGQUIT - 友好的停止
SIGUSER1 - 重新打开日志文件
SIGUSER2 - 友好的重启所有的工作进程 + 友好的重启php-fpm配置/二进制文件

tips - 提示

PHP-FPM CFI守护进程和大多数流行的web服务器都工作的很好,包括:Apache2,lighttpd以及nginx。