2012-10-14 142 views
1

此cookie不可用於www.domain.com,但可用於domain.com。奇怪的是,firefox在www.domain.com(使用視圖信息但我的服務器無法識別cookie)看到cookie。我做了一個體面的搜索量,我發現的唯一解決方案是將域設置爲.domain.com,但是我的cookie不能在domain.com上閱讀。這裏是我的代碼:無法從www訪問PHP cookie。子域

//this results in no access through domain.com 
setcookie('username', $username, time()+3600*24, '/', '.domain.com'); 

//this results in domain.com access but not www.domain.com 
setcookie('username', $username, time()+3600*24, '/'); 

讓cookie可用於domain.com和所有子域的關鍵是什麼?

+0

你試過'的setcookie( '用戶名',$的用戶名,時間()+ 3600 * 24, '/', 'domain.com');' – j08691

+0

的該cookie可用於的域。將域設置爲'www.example.com'將使cookie在www子域和更高子域中可用。可用於較低域名的Cookie(例如'example.com')可用於較高的子域名,例如'www.example.com'。老舊瀏覽器仍然實施已棄用的»RFC 2109可能需要領先的。以匹配所有子域。 –

+0

我讀了閱讀,在PHP指南和域設置爲domain.com,我無法從domain.com訪問cookie,只有www.domain.com – Osman

回答

2

試試:

setcookie('username', $username, time()+3600*24, '/', 'domain.com');

+0

這是不可訪問的domain.com – Osman

+0

嘗試刪除cookie。 – 2012-10-14 02:34:49

+0

這是問題......正如我在我的評論中所說的,我的所有調整導致我的註銷系統不會正確刪除舊的cookie,因此cookies不斷累加!謝謝! – Osman