サービスからコンテンツを配信するために、Fastly とその Varnish を使用しています。複数のサービスにコンテンツを配信するために、次のスニペットを使用しています。
sub vcl_recv {
#FASTLY recv
if (req.url.path ~ "^/services/") {
set req.url = regsub(req.url, "/services/(.*?)/", "/");
}
}
/services/user/getこれが機能し、サービスの/getエンドポイントに配信できるようになりuserます。
ただし、このスニペットを使用すると、Fastly はgzip圧縮を完全にスキップします。これは次を使用して修正できreturn(lookup)ます。
sub vcl_recv {
#FASTLY recv
if (req.url.path ~ "^/services/") {
set req.url = regsub(req.url, "/services/(.*?)/", "/");
}
return (lookup);
}
この時点で、gzip圧縮が機能しています。残念ながら、これにより、すべてPOSTのPATCH、、DELETEリクエストが として到着しGETます。
Varnish のドキュメントを調べてみましたが、これ(lookup)が本当に必要な分野かどうかわかりません。これをどのように実装する必要があるか教えてもらえますか?