Kontrolle von Cookie-Domänen und Subdomains in PHP
Beim Erstellen einer Website mit mehreren Subdomains ist es notwendig, die Domänen für Sitzungscookies zu steuern Stellen Sie eine ordnungsgemäße Sitzungsverwaltung für jede Subdomäne sicher. Es scheint jedoch eine Diskrepanz in der Cookie-Verarbeitung von PHP zu geben, wenn die Domäne manuell festgelegt wird.
Standardmäßig weist session_start() ein Sitzungscookie der aktuellen Subdomäne zu. Der Versuch, die Cookie-Domäne mit ini_set() oder session_set_cookie_params() festzulegen, führt jedoch zu einem Cookie mit einer Domäne, die mit einem Punkt beginnt (.subdomain.example.net). Dieses Verhalten ordnet das Cookie automatisch allen Subdomains zu.
Das Problem entsteht, weil die Cookie-Funktionen von PHP der bereitgestellten Domain automatisch einen Punkt voranstellen. Um dies zu vermeiden, kann stattdessen die Funktion header() verwendet werden. Dies ermöglicht eine explizite Kontrolle über die Cookie-Domäne. Zum Beispiel:
header("Set-Cookie: cookiename=cookievalue; expires=Tue, 06-Jan-2009 23:39:49 GMT; path=/; domain=subdomain.example.net");
Durch die Verwendung von header() können wir die Cookie-Domäne ohne das automatische Präfix festlegen und so das Cookie auf die angegebene Subdomäne beschränken. Diese Methode bietet eine präzise Kontrolle über Cookie-Domänen und Subdomänen in PHP-Anwendungen mit mehreren Subdomänen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3