Al tener que personalizar la configuración del grupo php-fpm de un nuevo servidor, me pregunto si es posible / permitido / recomendado tener un nuevo archivo de grupo, cuyo nombre va alfabéticamente después del original, que solo tiene valores que anulan la configuración inicial.
La configuración original está en /etc/php/7.0/fpm/pool.dnombre www.conf.
Parece que, según las páginas relacionadas con la instalación, los ingenieros modifican directamente el original (guardando una copia de los valores iniciales). P.ej
[www]
...
user www-data
group www-data
pm.max_children 2
da después de la modificación
[www]
...
user myapp ; was www-data
group myapp ; was www-data
pm.max_children 8 ; was 2
Pero parece que podría ser una tarea que se repetirá después de la próxima actualización de php-fpm (además, la configuración está en una 7.0ruta, eso es preocupante).
En lugar de modificar el archivo original, me gustaría mantenerlo sin cambios y agregar otro, digamos wwwmyapp.confque declararía el mismo grupo y que solo tendría los valores que han cambiado
en wwwmyapp.conf
[www] ; same pool!
user myapp
group myapp
pm.max_children 8
en pool.d, lista de archivos
www.conf
wwwmyapp.conf
dado que en php-fpm.conftodos los archivos conf de grupo se cargan, los valores de wwwmyappse leerán después de los de www(en el mismo wwwgrupo) y deben anular los primeros valores.
- Parece funcionar en algunas pruebas y no se informa ningún error, pero ¿funcionará todo el tiempo y para todos los valores?
- ¿Deberíamos sobrescribir el archivo de configuración directamente en su lugar?
No se pudo encontrar una respuesta en ningún documento, ni siquiera en php.net.
fuente

Respuestas:
No se pudo encontrar una confirmación "oficial" de otra fuente, pero aquí hay algunos resultados después de hacer una investigación:
Analizando el código fuente de
php7.0-fpmy más específicamentefpm-conf.c, parece quephp-fpm.confse lee primero [ fpm_conf_load_ini_file ()],includedirectivas se leen en orden, dando una lista de archivos gracias a glob () ,includetendrá una llamada recursiva a la función de procesamiento incluye, yGLOB_NOSORTopción)Por lo tanto, podemos suponer, al menos en esta versión, pero es poco probable que esto cambie pronto considerando el código actual, que es seguro organizar los
pool.darchivos de configuración del directorio en orden alfabético; cualquier valor registrado previamente se sobrescribe con una entrada con el mismo nombre leído después.Tenemos una forma limpia de manejar los archivos de configuración
php-fpm, manteniendo intactos los de distribución y agregando archivos personalizados con un nombre alfabéticamente mayor que los empaquetados, que contienen las pocas opciones que deben cambiarse.fuente
[global]sección. por ejemergency_restart_threshold. Probado en php7.1-fpm ubuntu (servidor 18).wwwla única forma de anularlo es usando los nombres de archivo pool.d como,wwwsomethingo comenzando conx,yoz.En caso de que tenga algún archivo como php-overrides.ini, debe copiarlo en
/etc/php/7.0/fpm/conf.d/99-overrides.iniEl prefijo 99 se debe al orden de ejecución
fuente
conf.dlas anulaciones no pueden anularphp-fpm.confvariables (solo enpool.d/debajo[global]) (nota para el yo futuro)