/ / Zend Framework 1.10: i cookie non vengono memorizzati - php, zend-framework, cookie, zend-http-client

Zend Framework 1.10: i cookie non vengono memorizzati - php, zend-framework, cookie, zend-http-client

Sto cercando di utilizzare Cookies e Zend Framework 1.10. Questo è il mio codice:

$zendCookie = new Zend_Http_Cookie("foo", "bar", "localhost", time() + 60 * 60 * 24 * 30);

$client = new Zend_Http_Client();
$client->setCookie($zendCookie);

Ma i cookie non vengono memorizzati, l'ho controllato con l'estensione di Firefox di Firecookie. Cosa c'è che non va?

risposte:

1 per risposta № 1

Ho avuto lo stesso problema anche usando setcookie () di php, ma l'impostazione del campo di dominio per svuotare funziona anche se Zend_Http_Cookie () genererà un'eccezione se il campo del dominio è vuoto.

Il cookie non funzionerà con il virtualhost del mio localhost

setcookie ( "FOO", "cookie content", 0, "/", "myProjectSiteVHost", true, true);

Impostazione del campo del dominio su vuoto - Cookie memorizzato!

setcookie ( "FOO", "cookie content", 0, "/", "", true, true);

Documenti: setcookie ()


0 per risposta № 2

Localhost fa cose strane con i cookie.

Vorrei impostare un vhost con un nome di server psuedo e rendere questa una voce nel file hosts e puntarla a 127.0.0.1

IE:

<VirtualHost *:80>
ServerName test.dev
#(other required / normal items here)
</VirtualHost>

Quindi nel tuo / etc / hosts (o C: WindowsSystem32driversetchosts) dovresti aggiungere:

127.0.0.1        test.dev

Quindi è possibile accedere all'applicazione localmente dachiamando test.dev e lo useresti al posto di "localhost" per i cookie e non dovrebbe rovinare i cookies come fa localhost. Puoi trovare un po 'più di informazioni su cosa sto parlando con i cookie localhost Qui.


0 per risposta № 3

Cookie su localhost con dominio esplicito

Penso che il problema sia dovuto al fatto che manca il punto / periodo completo prima del nome di dominio, ad esempio "dominio", solo alcuni browser eccederanno il dominio senza il punto iniziale.