AWSの EC2 + AMIMOTO(nginx) + S3 + ALB + ACM + Route53で、サブドメイン型マルチサイトのWodrpressを常時SSL化しようとしています。
###エラー内容
サブドメインの「xxx.hogehoge.info」や「yyy.hogehoge.info」は「https://~」で正常に表示でき、ダッシュボードにアクセスすることもできるようになったのですが、親である「hogehoge.info」だけは以下のような表示になってしまい、ダッシュボードへのアクセスもできません。
このサイトにアクセスできません hogehoge.info で接続が拒否されました。 次をお試しください: 接続を確認する プロキシとファイアウォールを確認する ERR_CONNECTION_REFUSED
http://~であればサイト本体・ダッシュボードともアクセスすることはできますが、プラグイン「Really Simpe SSL」などでも「SSL証明書が検出されません」と出てしまいます。
また、ちゃんと「保護されています」との状態で表示できるサブドメインのサイトも、繋がるまでが異様に遅い(一度開けばすぐ読み込めるが、開くまで5~15秒ほどかかる)状態です。
###構成について
EC2にAMIのAMIMOTOを使用したサブドメイン型マルチサイトのWordpressです。画像などの配信には絡新婦(プラグイン)を使ってS3で配信しています。
Amazon Certicficate Managerの証明書を使用するにあたって、ALBを使用しました。
ターゲットグループ等は以下の参考サイトの通りに設定し、ヘルスチェックも通過させられましたが、(追記:親ドメインについては)httpでアクセスしたときの自動リダイレクトは動作していません。普通にhttpのページが見られるだけです。
###参考にしたサイト
・AWS ALB + nginx 構成でhttpをhttpsにリダイレクトする
http://qiita.com/spaceprobe/items/96550d3214f2930f8b1a
###その他自分でいじってみた部分
(1)上記サイトの通りでターゲットグループ・ロードバランサーの設定を行い、
AMIMOTO(nginx)のvirtual.confに以下の記述を追加しています。
server { listen 81; rewrite ^ https://$host$request_uri permanent; }
(2)ALBのヘルスチェックを通すため、AMIMOTO(nginx)のdefault.confに以下の記述を追加しています。ヘルスチェックのパスは「healthcheck.html」、判定は「204」に変更しています。
location = /healthcheck.html { access_log off; return 204; break; }
(3)セキュリティグループの設定は以下の通りです。
(4)リダイレクトループ防止のため、wp-config.phpの冒頭に以下の記述を追加しています。
if ( ! empty( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' ) { $_SERVER['HTTPS']='on'; }
この状態で、親ドメインのサイトだけSSL表示できない・リダイレクトが機能していない場合にはどういった原因・対処が考えられるでしょうか?
###備考
「保護されていません」の警告が目立たないようにしたいだけの個人ブログであり、費用はできるだけ抑えたいのですが、Let's Encryptはまだワイルドカード証明書に対応していないということなので、ACMを使った構成で検討しています。
###追記分(4日17:00更新)
ACMの証明書は「親ドメイン」「ワイルドカード」とも取得ずみです。発行リージョンは東京です。
ALB関連の設定は以下の通りです。
・ターゲットグループ:HTTP
【基本的な設定】 名前 :HTTP プロトコル:HTTP ポート :80 ターゲットの種類 :instance VPC :vpc-23383341 ロードバランサー:HTTPS ターゲットグループのポート:81 状態:healthy 【ヘルスチェック】 プロトコル:HTTP パス :/healthcheck.html ポート :80(上書き) 正常のしきい値:5 非正常のしきい値 :2 タイムアウト :5 間隔 :30 成功コード:204
・ターゲットグループ:HTTPS
名前 :HTTPS プロトコル :HTTP ポート :443 ターゲットの種類 :instance VPC :vpc-23383341 ロードバランサー:HTTPS ターゲットグループのポート:80 状態:healthy 【ヘルスチェック】「HTTP」と同様
ロードバランサーの方の設定も確認しましたが、任意記入のヘルスチェック関連の項目以外は
参考にしたサイト(http://qiita.com/spaceprobe/items/96550d3214f2930f8b1a)とまったく同様に設定できています。
nginxの設定(default.conf)の内容は以下の通りです。nginxの再起動も正常にできます。
・virtual.confには質問本文にある以外の記述はありません。
・Route53のAレコードは、ALBの方に設定し直しています。
・リダイレクトが正常に機能していないのは、親ドメイン内のサイトだけです。子ドメインでは、接続は異様に遅いもののリダイレクトはできています。
他に追加が必要な情報があればお伝えください。
回答2件
あなたの回答
tips
プレビュー