2010-03-23 14 views
5

Cercando di condividere i cookie su 2 domini in asp.net, per qualche motivo 1 dominio ha un '.' prima del dominio, e l'altro no.Perché alcuni cookie hanno un '.' prima del dominio?

Perché è quello?

es:

.staging.example.com 

e

staging.example.com 

È questo qualcosa a che fare con il modo creo il cookie, o di un cambiamento web.config?

Non sto utilizzando l'autenticazione basata su moduli, è sufficiente creare manualmente un cookie.

Upd

io pongo il dominio cookie come:

HttpCookie c = new HttpCookie("blah"); 
c.Value = "123"; 
c.Expires = DateTime.Now.AddHours(12); 
c.Domain = ".staging.example.com"; 

Response.Cookies.Add(c); 

Per qualche motivo non ottenere la '' nel cookie.

Quale potrebbe essere il problema?

risposta

1

Il cookie per .staging.example.com è anche leggibile per ogni sottodominio di tale dominio, ad es. www.staging.example.com, l'altro no.

2

Se si imposta a. prima di un nome di dominio, ad es.

.staging.example.com 

Ciò significa che qualsiasi nome di dominio che risiede sotto quello, avrà accesso a tale cookie. Per esempio. test01.staging.example.com avrebbe accesso a qualsiasi cosa contenesse quel cookie come se lo avesse creato esso stesso. Senza il punto, è limitato al dominio specifico che viene chiamato.

1

Per rendere il cookie disponibile su tutti i sottodomini di staging.example.com poi quando si imposta a .staging.example.com

Problemi correlati