設定ファイルなしで仮想ホスト設定を取得する

設定ファイルなしで仮想ホスト設定を取得する

誤って仮想ホストファイルを削除してしまいました。Apache2.4 は今のところ、010-foo.confまだ実行中です。もう存在しないファイルの実際の構成を確認する方法はありますか (apachectl コマンドなどを使用して)?reloadrestart

答え1

mod_info がインストールされていない場合は、親 Apache プロセス (pid 1 が所有するプロセス) のメモリをファイルにダンプし、"VirtualHost" などを検索することができます。私は自分のシステムでこれをテストしましたが、うまくいきました。必要なgcoreものを切り取って設定ファイルを置き換えるなど、いろいろと試してみる必要があります。grep

gcore <pid>
less core.<pid>

編集(OPより):

がない場合はgcore、(Ubuntu) からインストールできますapt-get install gdb。pid ファイルは通常 にあります/var/run/apache2/apache2.pid。次に、上記のコマンドを実行して、たとえば でバイナリ ファイルを検索しますgrep -obUaP "text to search" <dump file>ここバイナリ ファイルに対する grep の使用に関する詳細については、こちらをご覧ください。

答え2

をインストールした場合はmod_infoそれを使ってサーバーの設定を印刷します私の場合、すべての VirtualHosts を含め、Apache が認識する構成全体を確認できます。

まだインストールされておらず動作していない場合mod_info、この情報は利用できない可能性があります。

コマンドラインでVirtualHost情報を見るには、httpd -S完全ではありませんが、何もないよりはましです。

-S
Show the settings as parsed from the config file (currently only shows the virtualhost settings).

関連情報