名前ベースのVirtualHostを設定しました。
1つのIPアドレスのサーバに、
2つのVirturalHostを設定して、
DocumentRootを分けようとしています。
VirtualHostの設定は、それぞれ、
ServerName A
ServerName B
とします。
ServerName Aは、問題なくアクセスできます。
ところが、ServerName Bは、400エラーとなります。
設定を何度みなおしても、間違いが見つかりません。
両社の違いは、DocumentRootと、ServerName 、
それと、logファイルの設定です。
仕方がないので、それぞれの値を一つずつ変更しながら、結果を確認しました。
そして、わかったのは、ServerName Bとして設定したホスト名に問題がありました。
ホスト名に "_"(アンダースコア)が含まれていたことが原因でした。
あらためて、グーグル先生に聞いてみたら、
結構、これでハマっている方がいるようで、たくさん事例がヒットしました。
調べ方が悪かったようです。
RFCが修正されて、標準命名規則が変更になっていました。
apacheもそれに則り、
Apache 2.4.25 以降でホスト名のアンダースコアが禁則文字となっていました。
これを修正したら、即OK、のはずだったのですが、
新たなエラーが発生。
「
hostsファイルの設定がブラウザに反映されない」
なかなか、先に進めない・・・。