Anscheinend hätte ich keine schlaflose Nacht damit verbringen sollen, eine Anwendung zu debuggen. Ich wollte mein nginx neu starten und habe festgestellt, dass die Konfigurationsdatei leer ist. Ich erinnere mich nicht, es abgeschnitten zu haben, aber dicke Finger und reduzierte Aufmerksamkeit spielten wahrscheinlich ihre Rolle.
Ich habe keine Sicherung dieser Konfigurationsdatei. Ich weiß, ich hätte es schaffen sollen.
Gut, dass der aktuelle Nginx-Daemon noch läuft. Gibt es eine Möglichkeit, die Konfiguration in eine Konfigurationsdatei zu kopieren, die später verstanden wird?
Dies wird bei dieser Anfrage nicht helfen, könnte aber anderen aus dem gleichen Grund helfen, hierher zu gelangen. Neuere Nginx-Versionen haben die Option -T, um die Nginx-Konfiguration zu sichern, die aus allen Nginx-Konfigurationsdateien gelesen wurde , nicht aus dem Speicher:
nginx -T
Dies kann nützlich sein, um zu bestätigen, dass eine Konfigurationsdatei gelesen wird, um sie mit anderen Servern zu vergleichen oder um nach Konfigurationen zu suchen.
Auch hier wird die Konfiguration nicht aus dem laufenden Prozess ausgegeben, sondern nur das, was ein neuer Prozess laden würde.
quelle
Die ngx_conf_t ist ein Typ einer Struktur, die für das Konfigurations-Parsing verwendet wird. Es ist nur während der Konfigurationsanalyse vorhanden, und Sie können offensichtlich nicht darauf zugreifen, nachdem die Konfigurationsanalyse abgeschlossen ist.
quelle
postconf -n
für Postfix oderexim -bP
für Exim oder (der schlecht benannte)testparm -v
für Samba usw.Der ideale Weg ist die Suche nach der
ngx_conf_t
Struktur aus dem Nginx-Prozessabbild.Es wird hier definiert
http://trac.nginx.org/nginx/browser/nginx/trunk/src/core/ngx_conf_file.h#L166
Mein C & gdb ist beschissen, damit zu Hause jemand anders eine Lösung finden kann.
quelle