httpd, VirtualHostが全部同じURLにリダイレクトする時確認したこと

httpd, VirtualHostが全部同じURLにリダイレクトする時確認したこと

こんばんは。先週引いた風邪がいまだに尾を引いているのるぼるのんです。

友人の開発の手伝いをしていたら、友人がVoyagerの神になりました。

 

別件でサーバーSSL証明の更新でちょっと詰まっていたようなので、やったことメモ。

環境はphp5.6系、apache 2.2系、CentOS 6系。

 

現象

1. 新プロジェクトに対するLet’ Encryptの証明書新規取得がうまく行かない。

2. 更新もうまく行かない(らしい)

3. certbot-autoがない

4. 80番でのリクエストが別URLにリダイレクトされている

 

このうち2, 3に関してはcertbot入れ直せば良いや。1がうまく行ってないのは4でリダイレクト先がおかしいのが原因かな。ということでhttpdを中心に見てみた。

 

VirtualHostの宣言がうまく行ってない

vhosts.confを用意して、<?php echo ‘It works!”; ?>のみを表示するプロジェクトに飛ばそうとしてみる。

別のURLに飛んでいる、、、conf.d内の各ファイルというより、httpd.confが原因ぽい。VirtualHostがうまく動いていなくて、優先度最高のServerName(VirtualHostとして記述している最初のServerName)に飛んでいる?

 

httpd.confにあった

httpd.conf

VirtualHostの宣言がうまく行ってなかったぽい。コメントイン、コメントアウトしてサーバーリスタート。

httpd.confの行数が多すぎて見つけるのが苦痛だった、、、

 

あとはcertbot-autoをインストール

Let’s Encrypt総合にある通り、CentOS 6系にcertbot-autoを入れ直して、実行。

あー、サーバー周りは単純なことでも疲れる、、、

 

まとめ

VirtualHostが動いていないときは、単純なプロジェクトを作成してみて、Vhostsの書き方が悪いのか、httpd.confが悪いのか確認してみてください。うまく行かない時はだいたいServerNameか、Vhostsの使用宣言でこけてる印象。

CentOSカテゴリの最新記事