Apache はリロードごとにデフォルトの VHOST 間を行き来します

Apache はリロードごとにデフォルトの VHOST 間を行き来します

複数の仮想ホストで Apache を実行している CentOS 6 VM があります。そのうちの 1 つ (1 つだけ) が断続的に動作しなくなっていました。

私が見たところ、Apache を再起動すると、インデックス リストが表示されることもあれば、イントラネット サイトが表示されることもありました。さらに奇妙なことに、ディレクトリ リストを提供する仮想ホストの例が無効になっていました。さらに奇妙なのは、イントラネット サイト用に設定したサーバー エイリアスが常に機能していたことです。

少なくとも CentOS 6 では、Apache は定期的に自動的に再起動されます。

イントラネット サイトを復旧するための一時的な修正は、Apache を再起動することでした。

答え1

今日は(一体何が問題なのか考えながら)走ってみた

apachectl -D DUMP_VHOSTS

何度か続けて実行したところ、ポート 443 のデフォルトの vhost が 2 つのホスト名間で切り替わっていることに気付きました。1 つは vhost 名でさえありませんでした。

サーバーの IP アドレスを逆探知しました。

dig -x 1.2.3.4

するとなんと、2 つの「A」レコードが返されました。1 つはイントラネット サイト用、もう 1 つは SSH で接続するために使用するサーバー ホスト名用などです。

そのうちの 1 つを、本来あるべき CNAME に変更すると、問題は解決したようです。サーバーはもはや ID 危機に陥っていません。

関連情報