2010-03-22 72 views
0

假設您想要從同一個網址提供不同的內容,但仍希望能夠使用squid緩存。魷魚更改緩存密鑰

例如緩存登錄的用戶主頁與其他用戶。有沒有辦法在將請求url放入squid的緩存之前添加一個cookie?

回答

0

嘗試storeurl_rewrite_program玩:

http://www.squid-cache.org/Versions/v2/2.7/cfgman/storeurl_rewrite_program.html

基本上,它就像一個正常的魷魚重寫/轉發程序,但它僅影響使用查找/存儲在緩存中的URL。

+0

是的,我看着使用重寫程序,但程序沒有提供足夠的關於請求(即cookie鍵/值)的信息來做我想做的事情。 對於每個請求的URL重寫將收到符合格式 URL CLIENT_IP「/」 FQDN 用戶方法 urlgroup [ kvpairs] 目前kvpairs不支持,我相信他們會解決這個問題。 – 2010-04-14 13:56:03

+0

是的。我有相同的用例,並且必須破解Squid將配置好的請求頭傳遞給重寫器以幫助做出決定。 對於一次性破解(參見store_rewrite.c:storeurlStart)來說這不是一個巨大的改變,但它涉及更多的涉及做到這一點,因此它可以摺疊回到Squid中(我希望在某些時候做)。 – 2010-04-15 00:06:36

1

使用不同的標題。

因此,您可以擁有多個版本的頁面,具體取決於不同的頁眉。但瀏覽器必須發送變體標題,因此您沒有太多選擇來執行此操作。 Cookie頭可以用於你的用例。小心PURGE方法不適用於魷魚中的變體緩存!