PHP-FPM Configuration


;;;;;;;;;;;;;;;;;;;;;
; FPM Configuration ;
;;;;;;;;;;;;;;;;;;;;;


[global]
;PID文件的位置。默认为空
pid = /var/run/php-fpm/php-fpm.pid

;错误日志的位置
error_log = /var/log/php-fpm/error.log

;错误级别。
;可用级别为:
;    alert(必须立即处理),
;    error(错误情况),
;    warning(警告情况),
;    notice(一般重要信息),
;    debug(调试信息)。
;    默认:notice

log_level = error

;如果子进程在 emergency_restart_interval 设定的时间内收到该参数设定次数的 SIGSEGV 或者 
;SIGBUS退出信息号,则FPM会重新启动。0 表示“关闭该功能”。默认值:0(关闭)
emergency_restart_threshold = 0

;emergency_restart_interval 用于设定平滑重启的间隔时间。这么做有助于解决加速器中共享内存的使用问题。
;可用单位:s(秒),m(分),h(小时)或者 d(天)。默认单位:s(秒)。默认值:0(关闭)
emergency_restart_interval = 0

;设置子进程接受主进程复用信号的超时时间。
;可用单位:s(秒),m(分),h(小时)或者 d(天)。默认单位:s(秒)。默认值:0(关闭)
process_control_timeout = 0

;设置 FPM 在后台运行。设置“no”将 FPM 保持在前台运行用于调试。默认值:yes
daemonize = yes



[www]
;设置接受 FastCGI 请求的地址。可用格式为:'ip:port','port','/path/to/unix/socket'。每个进程池都需要设置
listen = 127.0.0.1:9000

;设置 listen(2) 的半连接队列长度。“-1”表示无限制。默认值:-1
listen.backlog = -1

;设置允许连接到 FastCGI 的服务器 IPV4 地址。等同于 PHP FastCGI (5.2.2+) 中的 FCGI_WEB_SERVER_ADDRS 环境变量。
;仅对 TCP 监听起作用。每个地址是用逗号分隔,如果没有设置或者为空,则允许任何服务器请求连接。默认值:any
listen.allowed_clients = 127.0.0.1

;如果使用,表示设置 Unix 套接字的权限。在Linux中,读写权限必须设置,以便用于 WEB 服务器连接。
;在很多 BSD 派生的系统中可以忽略权限允许自由连接。默认值:运行所使用的用户和组,权限为 0666
;listen.owner = nobody

;参见 listen.owner
;listen.group = nobody

;参见 listen.owner
;listen.mode = 0666

;FPM 进程运行的Unix用户。必须设置
user = apache

;FPM 进程运行的 Unix 用户组。如果没有设置,则默认用户的组被使用
group = apache

;设置进程管理器如何管理子进程。可用值:static,ondemand,dynamic。必须设置
;    static - 子进程的数量是固定的(pm.max_children)
;    ondemand - 进程在有需求时才产生(当请求时,与 dynamic 相反,pm.start_servers 在服务启动时即启动
;    dynamic - 子进程的数量在下面配置的基础上动态设置:
;            pm.max_children,
;            pm.start_servers,
;            pm.min_spare_servers,
;            pm.max_spare_servers
pm = dynamic

;pm 设置为 static 时表示创建的子进程的数量,pm 设置为 dynamic 时表示最大可创建的子进程的数量。必须设置
;该选项设置可以同时提供服务的请求数限制。
;类似 Apache 的 mpm_prefork 中 MaxClients 的设置和 普通PHP FastCGI中的 PHP_FCGI_CHILDREN 环境变量
pm.max_children = 50

;设置启动时创建的子进程数目。仅在 pm 设置为 dynamic 时使用。
;默认值:min_spare_servers + (max_spare_servers - min_spare_servers) / 2
pm.start_servers = 5

;设置空闲服务进程的最低数目。仅在 pm 设置为 dynamic 时使用。必须设置
pm.min_spare_servers = 5

;设置空闲服务进程的最大数目。仅在 pm 设置为 dynamic 时使用。必须设置
pm.max_spare_servers = 35

;设置每个子进程重生之前服务的请求数。
;对于可能存在内存泄漏的第三方模块来说是非常有用的。如果设置为 '0' 则一直接受请求,等同于 PHP_FCGI_MAX_REQUESTS 环境变量。
;默认值:0
;pm.max_requests = 500

;FPM 状态页面的网址。如果没有设置,则无法访问状态页面,默认值:无
;pm.status_path = /status

;FPM 监控页面的 ping 网址。如果没有设置,则无法访问 ping 页面。
;该页面用于外部检测 FPM 是否存活并且可以响应请求。请注意必须以斜线开头(/)
;ping.path = /ping

;用于定义 ping 请求的返回响应。返回为 HTTP 200 的 text/plain 格式文本。默认值:pong
;ping.response = pong

;设置单个请求的超时中止时间。该选项可能会对 php.ini 设置中的 'max_execution_time' 因为某些特殊原因没有中止运行的脚本有用。
;设置为 '0' 表示 'Off'。可用单位:s(秒),m(分),h(小时)或者 d(天)。默认单位:s(秒)。
;默认值:0(关闭)
;request_terminate_timeout = 0

;当一个请求该设置的超时时间后,就会将对应的 PHP 调用堆栈信息完整写入到慢日志中。
;设置为 '0' 表示 'Off'。可用单位:s(秒),m(分),h(小时)或者 d(天)。默认单位:s(秒)。
;默认值:0(关闭)
;request_slowlog_timeout = 0

;慢请求的记录日志。默认值:#INSTALL_PREFIX#/log/php-fpm.log.slow
slowlog = /var/log/php-fpm/www-slow.log

;设置文件打开描述符的 rlimit 限制。默认值:系统定义值
;rlimit_files = 1024

;设置核心 rlimit 最大限制值。可用值:'unlimited',0 或者正整数。默认值:系统定义值
;rlimit_core = 0

;启动时的 Chroot 目录。所定义的目录需要是绝对路径。如果没有设置,则 chroot 不被使用
;chroot = 

;设置启动目录,启动时会自动 Chdir 到该目录。所定义的目录需要是绝对路径。默认值:当前目录,或者根目录(chroot时)
;chdir = /var/www

;重定向运行过程中的 stdout 和 stderr 到主要的错误日志文件中。
;如果没有设置,stdout 和 stderr 将会根据 FastCGI 的规则被重定向到 /dev/null。默认值:无
;catch_workers_output = yes


;security.limit_extensions = .php .php3 .php4 .php5

;给运行池传递环境变量和设置 PHP 的配置值
;env[HOSTNAME] = $HOSTNAME
;env[PATH] = /usr/local/bin:/usr/bin:/bin
;env[TMP] = /tmp
;env[TMPDIR] = /tmp
;env[TEMP] = /tmp

;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f justmepzy@gmail.com
;php_flag[display_errors] = off
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on
;php_admin_value[memory_limit] = 128M
;php_value[session.save_handler] = files
;php_value[session.save_path] = /var/lib/php/session