[英]Zend Framework 1.10: Cookies aren't stored
我正在嘗試使用Cookies和Zend Framework 1.10。 這是我的代碼:
$zendCookie = new Zend_Http_Cookie('foo', 'bar', 'localhost', time() + 60 * 60 * 24 * 30);
$client = new Zend_Http_Client();
$client->setCookie($zendCookie);
但是不會存儲cookie。 我用Firecookie Firefox的擴展名對其進行了檢查。 怎么了?
即使使用php的setcookie(),我也遇到同樣的問題,但是將域字段設置為空。 盡管Zend_Http_Cookie()將在域字段為空的情況下引發異常。
Cookie無法與我的本地主機的虛擬主機一起使用
setcookie ( 'FOO', 'cookie content', 0, '/', 'myProjectSiteVHost', true, true);
將域字段設置為空-已存儲Cookie!
setcookie ( 'FOO', 'cookie content', 0, '/', '', true, true);
文件: setcookie()
Localhost對cookie做了一些奇怪的事情。
我將使用psuedo服務器名稱設置虛擬主機,並將其作為您的hosts文件中的條目並將其指向127.0.0.1
IE瀏覽器:
<VirtualHost *:80>
ServerName test.dev
#(other required / normal items here)
</VirtualHost>
然后在您的/ etc / hosts(或C:\\ Windows \\ System32 \\ drivers \\ etc \\ hosts)中添加:
127.0.0.1 test.dev
然后,您可以通過調用test.dev在本地訪問該應用程序,並將其用於代替“ localhost”作為cookie,並且它不應像localhost那樣與cookie混淆。 您可以在此處找到有關我在談論localhost cookie的更多信息。
我認為問題是因為在域名即“ .domain.com”之前缺少句號/句號,只有某些瀏覽器會刪除除前導點之外的域。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.