Domänenübergreifende Cookies: Setzen eines Cookies für eine andere Domain
Setzen von Cookies für eine andere Domain als die, auf der sich die aktuelle Sitzung des Benutzers befindet entstanden ist, mag einfach erscheinen. Diese Aktion ist jedoch aus Sicherheitsgründen nicht möglich.
Browser implementieren eine Same-Origin-Richtlinie, die verhindert, dass von einer Domain gesetzte Cookies zusammen mit Anfragen an eine andere Domain gesendet werden. Wenn ein Cookie beispielsweise von a.com gesetzt wird, kann es nur in nachfolgenden Anfragen an a.com enthalten sein.
Warum domänenübergreifende Cookies verboten sind
Das Zulassen domänenübergreifender Cookies würde ein erhebliches Sicherheitsrisiko darstellen. Schädliche Websites könnten diese Schwachstelle ausnutzen, um Sitzungscookies, Passwörter und andere vertrauliche Informationen aus der Sitzung eines Benutzers in einer anderen Domäne zu stehlen.
Alternativer Ansatz
Bei Bedarf Wenn Sie von a.com ein Cookie für b.com setzen, können Sie b.com bitten, das Cookie selbst zu setzen. Dies kann erreicht werden, indem der Benutzer zu einer benutzerdefinierten URL auf b.com weitergeleitet wird, wo das Cookie gesetzt wird und der Benutzer dann zum gewünschten Ziel weitergeleitet wird.
Ein Beispiel für ein solches Skript auf b.com könnte sein be:
<?php setcookie('a', $_GET['c']); header("Location: b.com/landingpage.php"); ?>
Dieses Skript setzt das Cookie „a“ auf den im GET-Parameter „c“ bereitgestellten Wert und leitet den Benutzer dann zur Seite „landingpage.php“ weiter b.com.
Das obige ist der detaillierte Inhalt vonKönnen domänenübergreifende Cookies gesetzt werden und wenn nicht, welche Alternativen gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!