試しに、自鯖のリバースプロキシを一瞬だけTraefikに変えてみた。
すんなり動いたように見えたが、ログを見ると一部のPOSTリクエストに500エラーを返している。一方、バックエンドのサーバーでは対応するリクエストに200を返したログが記録されている。
どうもPOSTサイズを制限したいがためにbufferingのミドルウェアを使っていることが原因らしい。バックエンドが返すContent-Lengthの設定がおかしい?
https://github.com/traefik/traefik/issues/4456
まあ、Cloudflareを通すなら100MBで抑えられるので、無理にbufferingを使う必要はないかも。でも気持ち悪いので後日調べる。
https://developers.cloudflare.com/cache/concepts/default-cache-behavior/