Con FPM usted puede correr varios grupos de procesos con diferentes ajustes.
Estos son los parámetros que pueden ser ajustados por grupo.
-
listen
string
-
La dirección sobre la cual desea aceptar peticiones FastCGI. Las sintaxis válidas son:
'ip.add.re.ss:port', 'port', '/path/to/unix/socket'. Esta opción es obligatoria
por cada grupo.
-
listen.backlog
int
-
Establece listen(2) backlog. Un valor de '-1' significa ilimitado. Valor por defecto: -1.
-
listen.allowed_clients
string
-
Lista de direcciones ipv4 de clientes FastCGI que tienen permiso para conectarse.
El equivalente a la variable de entorno FCGI_WEB_SERVER_ADDRS en el
PHP FastCGI (5.2.2+) original. Tiene sentido solamente con un socket tcp escuchando. Cada dirección debe ser separada por coma. Si este valor es dejado en blanco, las conexiones serán aceptas desde cualquier dirección ip. Valor por defecto: any.
-
listen.owner
string
-
Establece permisos para sockets unix, si uno es usado. En Linux, los permisos de lectura/escritura deben ser puestos a fin de permitir conexiones desde un servidor web.
Muchos sistemas derivados de BSD permiten conexiones sin considerar los permisos.
Valor por defecto: usuario y grupo son establecidos según el usuario ejecutor, permisos puestos a 0660.
-
listen.group
string
-
Ver listen.owner
.
-
listen.mode
string
-
Ver listen.owner
.
-
listen.acl_users
string
-
Cuando las lsitas de control de acceso POSIX están soportadas, usted puede configurarlas usando esta opción.
Cuando se establece, listen.owner
y listen.group
son ignoradas. El valor es una lista de nombres de usuario separado por comas. Desde PHP 5.6.5.
-
listen.acl_groups
string
-
Ver listen.acl_users
.
El valor es una lista de nombres de grupo separado por comas. Desde PHP 5.6.5.
-
user
string
-
Usuario Unix de procesos FPM. Esta opción es obligatoria.
-
group
string
-
Grupo Unix group of FPM processes. Si no es establecido, el grupo del usuario por defecto
será usado.
-
pm
string
-
Seleccione cómo el manejador de procesos controlará el número de hilos de procesos.
Valores posibles: static
, ondemand
,
dynamic
.
Esta opción es obligatoria.
static
- el número de hilos de proceso es fijo (pm.max_children
).
ondemand
- el proceso se lanza en demanda (cuando se solicita,
al contrario que dynamic, donde pm.start_servers
son iniciados
cuando el servicio está iniciado.
dynamic
- el número de hilos de proceso será basado dinámicamente basado en las siguientes directivas: pm.max_children
, pm.start_servers
, pm.min_spare_servers
, pm.max_spare_servers
.
-
pm.max_children
int
-
El número de hilos de procesos a ser creados cuando pm
es puesto a
static
y el máximo número de hilos de proceso a ser creados
cuando pm
es puesto a dynamic
.
Esta opción es obligatoria.
Esta opción establece el límite sobre el número de peticiones simultaneas que
serán servidas. Equivale a la directiva ApacheMaxClients con
mpm_prefork y a la variable de entorno PHP_FCGI_CHILDREN
del PHP FastCGI original.
-
pm.start_servers
int
-
Número de hilos de procesos creados al inicio.
Usado solamente cuando pm
es puesto a dynamic
.
Valor por defecto: min_spare_servers + (max_spare_servers -
min_spare_servers) / 2.
-
pm.min_spare_servers
int
-
El número mínimo deseado de procesos libres en el servidor. Usado sólo cuando
pm
es puesto a dynamic
. También
obligatorio en este caso.
-
pm.max_spare_servers
int
-
El número máximo deseado de procesos libres en el servidor. usado sólo cuando
pm
es puesto a dynamic
.
También obligatorio en este caso.
-
pm.process_idle_timeout
mixed
-
El número de segundos después de los cuales se matará un proceso inactivo.
Usado sólo cuando pm
está establecido como ondemand
.
Unidades disponibles: s(segundos)(predeterminado), m(inutos), h(horas), o d(ías).
Valor por defecto: 10s.
-
pm.max_requests
int
-
El número de pedidos que cada hilo de proceso debe ejecutar antes
de reaparecer. Esto puede ser útil para evitar las fugas de memoria en librerías de terceros.
para el procesamiento de solicitudes sin límites especifique '0'. Equivale a
PHP_FCGI_MAX_REQUESTS. Valor por defecto: 0.
-
pm.status_path
string
-
La dirección URI para ver la página de status FPM. Este valor debe
comenzar con una barra inclinada (/). Si no se establece este valor, no se reconocerá ninguna URI
como página de estado. Valor por defecto: ninguno. . Valor por defecto: none.
-
ping.path
string
-
La dirección URI del ping para llamar a la página de monitor del FPM. Si este valor no es establecido,
ninguna dirección URI será reconocida como página del ping. Esto debería ser usado para probar
desde el exterior que el FPM está funcionando y respondiendo. Por favor, note que este valor debe
empezar con un slash (/).
-
ping.response
string
-
Esta directiva puede ser usada para personalizar las peticiones de respuestas a ping.
La respuesta es formateada como text/plain con un código de respuesta 200.
Valor por defecto: pong.
-
process.priority
int
-
Especifique la prioridad nice(2) que se aplicará al proceso maestro (sólo si se establece).
El valor puede variar entre -19 (prioridad más alta) hasta 20 (prioridad más baja).
Valor por defecto: no establecido.
-
process.dumpable
bool
-
Establece el indicador de proceso descargable (PR_SET_DUMPABLE prctl) incluso si el usuario
o grupo del proceso o grupo es diferente al usuario del proceso maestro. Permite crear el proceso
core dump y ptrace el proceso para el usuario del pool.
Valor por defecto: no. Desde de PHP 7.0.29, 7.1.17 y 7.2.5.
-
prefix
string
-
Establece un prefijo para la ruta de evaluación
-
request_terminate_timeout
mixed
-
El tiempo de espera para servir una simple petición luego que el proceso worker
sea eliminado. Esta opción debe ser usada cuando la opción 'max_execution_time'
no detenga la ejecuciuón del script por cualquier razón. Un valor de '0' corresponde a
'Off'. Unidades disponibles: s(egundos)(por defecto), m(inutos), h(horas), or d(ías).
Default value: 0.
-
request_slowlog_timeout
mixed
-
El tiempo de espera para servir una simple petición después de que un backtrace PHP
sea volcado al fichero 'slowlog'. Un valor de '0' corresponde a 'Off'.
Unidades disponibles: s(egundos)(por defecto), m(inutos), h(oras), or d(ías).
Valor por defecto: 0.
-
slowlog
string
-
El fichero de registro para peticiones lentas. Valor por defecto:
#INSTALL_PREFIX#/log/php-fpm.log.slow
.
-
rlimit_files
int
-
Establece el fichero descriptor rlimit. Valor por defecto: definido por el sistema.
-
rlimit_core
int
-
Establece el tamaño máximo del rlimit. Valores posibles: 'unlimited' o un entero mayor o igualo a 0.
Valor por defecto: definido por el sistema.
-
chroot
string
-
Establece el Chroot (enjaulado) a este directorio al inicio. Este valor debe ser definido como
una ruta absoluta. Cuando este valor no es establecido, el chroot no es usado.
-
chdir
string
-
Establece el Chdir a este directorio al inicio. Este valor debe ser establecido como
una ruta absoluta. Valor por defecto: directorio actual o / cuando está en chroot (enjaulado).
-
catch_workers_output
boolean
-
Redirige los worker stdout y stderr en el fichero de registro principal. Sí no es establecido, stdout y stderr serán redirigidos a /dev/null de acuerdo a las especificaciones FastCGI.
Valor por defecto: no.
-
decorate_workers_output
bool
-
Habilitar la decoración de salida para la salida de los catch_workers_output si está activado.
Valor por defecto: sí.
Disponible a partir de PHP 7.3.0.
-
clear_env
boolean
-
Entorno limpio in workers FPM.
Evita que variables de entorno arbitrarias lleguen a los procesos FPM mediante la limpieza del entorno en los workers antes de que se añadan las variables env a las pools correspondientes a esta configuración. Desde PHP 5.4.27, 5.5.11, y 5.6.0.
Valor por defecto: Yes.
-
security.limit_extensions
string
-
Limita las extensiones del script principal que FPM procesará.
Esto puede evitar errores de configuración del lado del servidor.
Usted debería limitar su FPM a procesar unicamente extensiones .php para evitar que usuarios malintencionados usen diferentes extensiones para ejecutar código PHP.
Valor por defecto: .php .phar
-
access.log
string
-
Archivo de registro de acceso.
Valor por defecto: no establecido
-
access.format
string
-
Formato del archivo de registro de acceso.
Valor por defecto: "%R - %u %t \"%m %r\" %s"
Es posible pasar las variables de entorno adicionales y actualizar los ajustes PHP de ciertos grupos.
Para ello, se necesita agregar las siguientes opciones al fichero de configuración.
serán sobre-escritos a sus valores previos.
Por favor note que definiendo
Como 5.3.3, establecer los ajustes PHP es también posible como servidor web.