Comme OP souligne l'ordre log_format, il est en effet très important, dans le cas de log_formats personnalisés, si vous placez dans le même répertoire les deux types de fichiers, certains fichiers avec log_formats, certains fichiers avec des blocs serveurs qui utilisent ces log_formats, le résultat sera un configuration hautement irremplaçable.
Au travail, lorsque nous avons d'abord déplacé notre ferme nginx fabriquée à la main dans une marionnette, nous avons commencé à voir certaines installations de nginx à partir de zéro pour échouer dans un matériel / une configuration identique, après beaucoup de débogage de situations bizarres comme avoir deux / etc / nginx / * (- r) avec un md5match et le même binaire produisant des résultats différents (erreur log_format invalide sur l'un et travaillant sur l'autre), nous avons appris à la dure que l' ordre est en effet très important pour certaines directives comme log_format.
Nous avons résolu le problème en déplaçant simplement la génération des blocs serveur de conf.d / * vers un autre dossier inclus après conf.d / *.