2011-10-09 184 views
1

我在URL爲http // somesite.com的環境中檢索cookie時遇到困難,並且通過負載平衡應用程序發送請求並將其發佈到各種服務器。我可以使用setcookie在PHP腳本中設置cookie,如下所示: setcookie(「NameTest」,$ cookieText,time()+ 3600,「/」); 和一個cookie somesite.com被創建,但是當我嘗試從運行的系統上的cookie讀取值時,我從來沒有找到創建的cookie。我知道必須有這樣做的方式,但沒有找到任何我可以使用的方法。任何人都可以告訴我如何完成這個功能?多服務器環境中的PHP cookie

當然這工作完全在一臺服務器上沒有負載平衡常規

回答

1

Cookies是往返式操作客戶端< - >在每次請求的服務器。如果cookie在隨後的請求中不存在,則必須弄清楚客戶端爲什麼不發送它。如果負載均衡器對最終用戶透明,那麼處理請求的服務器無關緊要 - 客戶端無論如何都會發送cookie。所以如果它沒有被髮送,那麼首先它不會被正確設置。

1

是的,你可以,因爲外部客戶端看到相同的IP和域名地址。但是,如果您需要共享SESSION信息,則必須使用類似memcached或mysql的節點之間共享會話數據。

+1

這或粘滯的會話,所以用戶每次都得到相同的服務器。 – ceejayoz