2日溶かした。
k8sのingress-controllerの下でサーバーを動かしていたところ、Cloudflare Workers経由のhttpsリクエストに対してだけ308を返す状況に陥った。 手元からcurlでhttpsリクエストを送るとちゃんと200が返ってきていて、何故かCloudflare Workersからfetchするときだけredirect loopに陥る。
https://
で始まるURLを指定しても、CloudflareのEncryption Modeの設定次第ではhttpで送られる。今回発生した事象の流れは以下の通り。
同じ罠に嵌る人が多いのかGoogleで調べると上の方に公式のドキュメントが出てくるが、 k8s側の設定を疑っていてしっかり読んでいなかった。