Come impostare un cookie per un altro dominio

Supponiamo che abbia un sito Web chiamato a.com e, quando viene caricata una pagina specifica di questo sito, ad esempio il link alla pagina, mi piace impostare un cookie per un altro sito chiamato b.com , quindi redirect l’utente su b.com .

Voglio dire, su carico di a.com/link voglio impostare un cookie per b.com e redirect l’utente su b.com .

L’ho provato e il browser ha effettivamente ricevuto il cookie da a.com/link , ma non ha inviato quel cookie sulla richiesta di reindirizzamento a b.com . È normale?

Possiamo impostare i cookie per altri domini?

    Non è ansible impostare i cookie per un altro dominio. Consentire ciò rappresenterebbe un enorme difetto di sicurezza.

    Devi avere b.com per impostare il cookie. Se a.com reindirizza l’utente a b.com/setcookie.php?c=value

    Lo script setcookie potrebbe contenere quanto segue per impostare il cookie e redirect alla pagina corretta su b.com

      

    Simile alla risposta principale, ma invece di redirect alla pagina e viceversa che causerà un’esperienza utente negativa, è ansible impostare un’immagine sul dominio A.

      

    E poi sul dominio B che è example.com in cookie.php avrai il seguente codice:

      

    Hattip a Subin

    Probaly puoi usare Iframe per questo. Facebook probabilmente usa questa tecnica. Puoi leggere di più su questo qui . Stackoverflow utilizza una tecnica simile, ma con l’archiviazione locale HTML5, più su questo sul proprio blog

    Non puoi Sarebbe un brutto rischio per la sicurezza.

    Non è ansible impostare i cookie per un altro dominio.

    Se si desidera passare dati a un altro dominio, è ansible codificare nell’URL.

     a.com -> b.com/redirect?info=some+info (and set cookie) -> b.com/other+page 

    Se hai a.my-company.com e b.my-company.com invece di solo a.com e b.com puoi rilasciare un cookie per il .my-company.com – sarà accettato e inviato a entrambi i domini.

    vedi RFC6265 :

    Lo user agent rifiuterà i cookie a meno che l’attributo Domain non specifichi un ambito per il cookie che includerebbe il server di origine. Ad esempio, il programma utente accetterà un cookie con un attributo Dominio di “esempio.com” o di “foo.example.com” da foo.example.com, ma l’interprete non accetterà un cookie con un attributo Dominio di “bar.example.com” o “baz.foo.example.com”.

    NOTA: per ragioni di sicurezza, molti programmi utente sono configurati per rifiutare gli attributi del dominio che corrispondono a “suffissi pubblici”. Ad esempio, alcuni interpreti rifiutano gli attributi del dominio “com” o “co.uk”. (Vedere la sezione 5.3 per ulteriori informazioni.)

    Ma la soluzione sopra menzionata con image / iframe funziona, anche se non è raccomandato a causa della sua insicurezza.

    Non puoi, ma … Se possiedi entrambe le pagine allora …

    1) È ansible inviare i dati tramite parametri di query ( http://siteB.com/?key=value )

    2) È ansible creare un iframe del sito B all’interno del sito A e inviare messaggi postali da un luogo all’altro. Poiché il sito B è il proprietario dei cookie del sito B, sarà in grado di impostare qualsiasi valore necessario elaborando il messaggio postale corretto. (Dovresti impedire ad altri mittenti indesiderati di inviarti messaggi! Dipende solo da te e dal meccanismo che decidi di utilizzare per evitare che ciò accada)