No.426
【AWS】CloudFrontのエラーページでURLを変更してリダイレクトさせる
CloudFrontのエラーページ…URLは変わらないのね…
CloudFrontではエラーページ設定からエラーコードごとに表示するためのアクションを設定できる。
この設定はクリック数回で設定できる反面、URLが変化しないという大問題があるため、たとえば「404の場合に特定のURLにリダイレクトさせる」という操作ができない。
 じゃあapacheのmod_rewriteなどでリダイレクトさせればいいと思うだろけど、「.htaccessでリダイレクトさせるとタイムアウトまで待ち続ける」という極悪仕様のため、それも行えない。(静的ページしか前提になっていない?)
解決方法はただひとつ。表示したページ内にリダイレクトを仕込んでおくしかない。
リダイレクトさせるためのURL
Javascriptでリダイレクトさせるとタイムラグが少なくてよさそう。
<!DOCTYPE html>
<html>
<head>
  <script type="text/JavaScript">
    location.href='リダイレクト先URL';
  </script>
</head>
<body>
</body>
</html>