Apparemment, je n'aurais pas dû passer la nuit blanche à essayer de déboguer une application. Je voulais redémarrer mon nginx et j'ai découvert que son fichier de configuration était vide. Je ne me rappelle pas l'avoir tronqué, mais des doigts gras et une attention réduite ont probablement joué leur rôle.
Je n'ai pas de sauvegarde de ce fichier de configuration. Je sais que j'aurais dû le faire.
Tant mieux pour moi, le démon nginx actuel est toujours en cours d'exécution. Y at-il un moyen de vider sa configuration dans un fichier de configuration qu'il comprendra plus tard?
Cela ne va pas aider sur cette demande, mais pourrait aider les autres à atteindre ici pour la même raison. Les versions plus récentes de nginx ont l'option -T pour vider la configuration de nginx lue à partir de tous les fichiers de configuration de nginx , et non de la mémoire:
nginx -T
Cela peut être utile pour confirmer qu'un fichier de configuration est en cours de lecture, pour le comparer à un autre serveur ou pour rechercher des configs.
Encore une fois, cela ne videra pas la configuration du processus en cours , mais seulement ce qu'un nouveau processus chargerait.
la source
Ngx_conf_t est un type de structure utilisé pour l'analyse de la configuration. Il n'existe que pendant l'analyse de la configuration et vous ne pouvez évidemment pas y accéder une fois l'analyse de la configuration terminée.
la source
postconf -n
pour Postfix ouexim -bP
pour Exim ou (le mal nommé)testparm -v
pour Samba, etc.la méthode idéale consiste à rechercher la
ngx_conf_t
structure de l'image de processus nginx.C'est défini ici
http://trac.nginx.org/nginx/browser/nginx/trunk/src/core/ngx_conf_file.h#L166
Mon Cdb est nul, donc quelqu'un d'autre à la maison pourrait trouver une solution.
la source