可能なすべてのリファラーでキャッシュを異なるものにしたい場合は、http プロトコルの Vary-header が解決策です。トラフィックが非常に少数の一意の URL からのリファラーで非常に均一でない場合、キャッシュ ヒット率が事実上失われます。
私がより良い解決策だと思うのは、誰が新しいユーザーであるかを推測するロジックをphpレイヤーから削除し、それをワニスに追加することです。これは、vcl_recv でリクエストにカスタム ヘッダーを設定し、そのヘッダーを使用して vcl_recv に次のようなものを追加して vcl_hash でハッシュすることで実行できます。
if ((req.http.referer ~ "www.newuserhost1.com" || req.http.referer ~ "www.newuserhost2.com") &&
req.url == "/") {
req.http.X-New-User = 1;
}
これを vcl_hash に追加します
hash_data(req.http.X-New-User);
ユーザーがバックエンドに到達すると、リファラーの代わりにそこから X-New-User の値を確認できます。