Bạn cần cài đặt gdb để kết xuất các vùng bộ nhớ của quá trình đang chạy.
# Set pid of nginx master process here
pid=8192
# generate gdb commands from the process's memory mappings using awk
cat /proc/$pid/maps | awk '$6 !~ "^/" {split ($1,addrs,"-"); print "dump memory mem_" addrs[1] " 0x" addrs[1] " 0x" addrs[2] ;}END{print "quit"}' > gdb-commands
# use gdb with the -x option to dump these memory regions to mem_* files
gdb -p $pid -x gdb-commands
# look for some (any) nginx.conf text
grep worker_connections mem_*
grep server_name mem_*
Bạn sẽ nhận được một cái gì đó như "Tập tin nhị phân mem_086cb000 phù hợp". Mở tệp này trong trình chỉnh sửa, tìm kiếm cấu hình (ví dụ: chỉ thị "worker_connections"), sao chép và dán. Lợi nhuận!
Cập nhật: Phương pháp này không hoàn toàn đáng tin cậy. Dựa trên giả định rằng quá trình nginx sẽ đọc cấu hình và không ghi đè / sử dụng lại vùng nhớ này sau. Tôi đoán quá trình nginx cho chúng tôi cơ hội tốt nhất cho điều đó tôi đoán.