Назад | Перейти на главную страницу

Есть ли команда, чтобы Apache отображал текущую конфигурацию из памяти?

Есть ли способ заставить веб-сервер Apache отображать текущую текущую конфигурацию из памяти, то есть не путем анализа файлов в каталогах конфигурации?

Мне только что удалось случайно перезаписать конфигурацию vhost на сервере (да, я знаю, должна была быть резервная копия!), И хотя я могу легко ее восстановить (очень новый сервер, такая простая конфигурация и, следовательно, нет резервной копии еще - это была задача завтрашнего дня), интересовался, есть ли вообще способ заставить Apache отображать свою текущую рабочую конфигурацию, а не просто анализировать файлы (как, похоже, делает httpd -S).

Пробовали поиск в Google и поиск здесь на ServerFault, но ничего не нашли. Я могу представить, что со временем это могло бы спасти некоторых людей. :)

Вот как восстановить конфигурацию Apache2 из памяти:


  1. возьмите сценарий dump-all-memory-of-pid.sh, упомянутый в этом потоке serverfault.

в Дамп памяти процесса Linux в файл

#!/bin/bash
grep rw-p /proc/$1/maps | sed -n 's/^\([0-9a-f]*\)-\([0-9a-f]*\) .*$/\1 \2/p' | while read start stop; do gdb --batch --pid $1 -ex "dump memory $1-$start-$stop.dump 0x$start 0x$stop"; done
  • поместите это в файл (например, "dump-all-memory-of-pid.sh") и сделайте его исполняемым
  • использование: ./dump-all-memory-of-pid.sh [pid]
  • Вывод печатается в файлы с именами: pid-startaddress-stopaddress.dump
  • Зависимости: gdb

  1. получить pid вашего процесса apache

    pgrep -uroot apache2
    

  1. сбросить память процесса

    mkdir /tmp/apache_dump && cd /tmp/apache_dump
    sh /path/to/dump-all-memory-of-pid.sh <PID>
    

  1. grep все файлы дампа для того, что, по вашему мнению, должно быть в файле конфигурации apache.

    grep DocumentRoot *
    

  1. откройте соответствующий файл (ы) дампа в vim и найдите строку.

    vim 24374-7f159d56c000-7f159d72c000.dump
    

Выполните поиск, набрав «/», например «/ DocumentRoot», а затем просто скопируйте нужный текст.


источник : http://forums.whirlpool.net.au/archive/2189742