LaravelアプリケーションでPlesk + Apache環境において421 Misdirected Requestエラーが発生する原因と、具体的な解決方法を実際のケースをもとに解説します。
Plesk環境で突然「421 Misdirected Request」が発生したときの正しい原因と解決方法
(Apacheアップデート後に全サイトが落ちるケース)
こんなトラブルに直面していませんか?
- Pleskで運用している すべてのWebサイト が突然表示されなくなった
- ブラウザには 421 Misdirected Request
- ApacheやPleskを触った覚えがないのに、朝になったら障害が発生していた
- ECサイト・業務サイトが一斉に止まり、問い合わせが殺到している
この現象は、Plesk環境でApacheが自動アップデートされた直後 に世界中で発生しました。
私たちFivenine Designでも、
Laravel/WordPress/ECサイトを含む複数案件で同様の障害対応を行っています。
421 Misdirected Request エラーの症状
Plesk公式でも報告されている通り、以下の特徴があります。
症状
- Pleskで管理している 全ドメイン がアクセス不可
- HTTP / HTTPS ともに 421 エラー
- 特定のサイトだけでなく 一斉障害
ログに出力される代表的なエラーメッセージ
AH02032: Hostname default-203_0_113_2 (default host as no SNI was provided)
and hostname www.example.com provided via HTTP
have no compatible SSL setup
原因(ここが最重要)
原因は HTTP/2 や Laravel ではありません
この問題の原因は、Apacheのセキュリティ修正(CVE対応)による仕様変更 です。
Plesk公式の説明を要約すると以下の通りです。
- Apacheの最新バージョンでは
SNI(Server Name Indication)を含まないTLS接続を拒否 するようになった - Plesk環境では
nginx → Apache のHTTPSプロキシ通信が行われている - しかし nginx は、デフォルト設定では
ApacheへSNIを渡さない - その結果、Apacheが
「どのドメイン宛の通信か判別できない」
→ 421 Misdirected Request を返す
なぜ「何もしていないのに突然起きた」のか?
多くのケースで以下が原因です。
- OSの自動アップデート(apt-daily-upgrade)
- Pleskの「自動システム更新」が有効
- Apacheパッケージだけが夜間に更新された
つまり、Plesk自体を更新していなくても発生します。
解決方法(公式推奨)
方法①:Pleskを最新版へアップデート(恒久対応)
Plesk公式では、以下のバージョンで修正済みと案内されています。
- Plesk 18.0.70.3
- Plesk 18.0.71.1 以降
可能な場合は、Pleskのアップデートが最も安全な恒久対応 です。
方法②:今すぐ復旧したい場合の手動回避策(公式ワークアラウンド)
Pleskをすぐに更新できない場合は、
nginx に SNIをApacheへ渡す設定 を追加します。
手順
- サーバーへ SSH で root 権限ログイン
- 以下を そのまま 実行
echo -e "proxy_ssl_server_name on;
proxy_ssl_name \$host;
proxy_ssl_session_reuse off;" \
> /etc/nginx/conf.d/fixssl.conf && systemctl restart nginx
この設定で何が起きるか
- nginx が Apache に対して 正しいホスト名(SNI)を付与
- Apacheが正しくVirtualHostを判別
- 421エラーが即時解消
※ この回避策は 後からPleskをアップデートしても問題ありません。
よくある質問・注意点
Q. HTTP/2を無効化すれば直る?
直るケースもありますが、根本解決ではありません。
HTTP/2無効化は
「SNIが問題になる通信経路を回避しているだけ」で、
将来のアップデートで再発する可能性があります。
Q. Laravelや.htaccessが原因?
今回の421エラーに関しては 関係ありません。
アプリケーション層ではなく、Webサーバー間通信の問題 です。
Q. Pleskの自動アップデートは無効にすべき?
- 本番環境では OS / Apache / Plesk の自動更新は慎重に
- 更新前に
- スナップショット
- バックアップ
- 検証環境
を用意するのが安全です
まとめ
- 今回の 421 Misdirected Request は
Apacheのセキュリティ修正による仕様変更 - nginx → Apache 間の SNI欠落 が直接原因
- 解決策は以下のいずれか
- Pleskを修正済みバージョンへアップデート
- nginx に SNI 設定を追加する公式ワークアラウンド
突然の全サイト障害は、
「自分の設定ミスではない」ケースも多くあります。
サーバー構成が複雑、本番作業が不安、他影響の確認が必要な場合は、
Fivenine Designが 原因切り分けから復旧まで実務レベルで対応 できます。