ECCUBE4:ドメイン変更に伴うアクセスエラー対応
ECCUBEでECサイトを運用している利用者様から「ドメインを変更してほしい」と依頼があったので新しいドメインに変更すると、ブラウザーに「Untrusted Host “ドメイン名”.(信頼できないドメインで)」とエラーメッセージが表示され、サイトにアクセスできなくなってしまいました。
ドメイン変更すると「Untrusted Host “ドメイン名”.」と表示される
※このエラーが出るか出ないかはレンタルサーバー によります。
同じようにECCUE4を利用しているサイトでもサーバーの使用によってドメイン変更によりエラーメッセージが出るケースと通常通りサイトが表示されるサーバーもあります。
私感ですが、セキュリティ制限の厳しい法人向けサーバーの方がこのエラーメッセージは出る傾向にあるように感じます。
このエラーメッセージが出る理由は公式サイトによると「EC-CUBEにおける HTTP Hostヘッダの処理に脆弱性 (JVN#53871926)」で、EC-CUBE 4系の場合は設定ファイルを変更することにより解決出来るとのことでしたので、その時の手順を備忘録とともに情報をシェアしていきます。
EC-CUBE 4系での修正方法:「.env ファイル」を修正する
「.env ファイル」は修正する前に必ずバックアップを取っておきます。
「.env ファイル」をエディタで開き「TRUSTED_HOSTS」の文字を検索するとすると2つヒットするので2つ目の「TRUSTED_HOSTS」の箇所を新しく設定したドメインに書き換えます。
.env での TRUSTED_HOSTS の記載例
# サブドメインありの場合
TRUSTED_HOSTS=^www\.example\.com$
# サブドメインなしの場合
TRUSTED_HOSTS=^example\.com$
# 複数指定時はカンマ区切りで設定
TRUSTED_HOSTS=^www\.example\.com$,^example\.com$
自分が実際に修正したのは下記のような記述です。
hoge1234567.hoge.jpサーバーのドメイン「www.example.tokyo」から「www.example.co.jp」に変更する場合
TRUSTED_HOSTS=^hoge1234567\.hoge\.jp$,^www\.example\.tokyo$
↓
TRUSTED_HOSTS=^hoge1234567\.hoge\.jp$,^www\.example\.co.jp$
TRUSTED_HOSTの記述を書き換えたら.envファイルを保存をしてサーバーへアップします。
サイトが表示されたらOK
.envファイルの変更が反映されているか新しいドメインでサイトにアクセスします。ドメイン変更以前と同じようにECサイトが表示されてたら成功です。