4
我已經在我們的網站上實現了FastCGI緩存,並且已經看到了很大的速度提升。然而,FastCGI緩存密鑰似乎不夠獨特。如果我登錄,我的名字會出現在標題中。然而,假設緩存仍然有效,下一個要登錄的人仍然會在頭中看到我的名字。PHP 5.5 FastCGI緩存
有沒有辦法讓每個用戶的緩存密鑰唯一?理想情況下,使用用戶Cookie或PHP會話中的唯一標識符?我嘗試了下面的答案,但Nginx無法重新啓動。
Log in value from Set-Cookie header in nginx
注意我的緩存關鍵是這樣的:
fastcgi_cache_key "$scheme$request_method$host$request_uri";
更新: 我的想法是,如果我可以解析發送到Nginx的HTTP頭,那麼我可以搶PHP會話ID和使用它。然而,我無法找到如何在任何地方做到這一點的例子。現在我有這樣的東西,這是行不通的。
http_cookie ~* PHPSESSID=([0-9a-z]+) {
set $ses_id $1;
}