Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

dump conf from running nginx process

Is it possible to get which conf the nginx is using only from a running nginx process?

To get the conf file path. sometimes ps aux reveal it, sometimes it doesn't. It might be just something like nginx: master process /usr/sbin/nginx (same as /proc/PID/cmdline)

  1. So is nginx -V the only solution?
  2. From this question, is it possible to dump conf data structure from nginx process directly? Or at least dump the conf file path?
like image 543
est Avatar asked Oct 11 '12 04:10

est


1 Answers

As of Nginx 1.9.2 you can dump the Nginx config with the -T flag:

-T — same as -t, but additionally dump configuration files to standard output (1.9.2).

Source: http://nginx.org/en/docs/switches.html

This is not the same as dumping for a specific process. If your Nginx is using a different config file, check the output for ps aux and use whatever it gives as the binary, e.g. if it gives something like

nginx: master process /usr/sbin/nginx -c /some/other/config 

you need to run

/usr/sbin/nginx -c /some/other/config -T 

If you are not on 1.9.2 yet, you can dump the config with gdb:

  • https://serverfault.com/questions/361421/dump-nginx-config-from-running-process
like image 155
Gordon Avatar answered Oct 04 '22 08:10

Gordon