/ / How to: dauerhafte PHP-Sitzung über Subdomains [duplizieren] - PHP, Sitzung, Cookies

Gewusst wie: persistente PHP-Sitzung über Subdomains [duplizieren] - PHP, Sitzung, Cookies

Mögliche Duplikate:
PHP: Cookie Domain / Subdomain Kontrolle
Erlaube PHP-Sessions, auf Subdomains zu übertragen

Wichtige Info

  • Die Website besteht aus Hunderten von Subdomains "example.domain.com"
  • Benutzer, die sich auf meiner Website anmelden, können sich an mich erinnern
  • Benutzer können sich von jeder Subdomain aus anmelden (und müssen in der Lage sein, in dieser Sitzung durch jede Subdomain zu navigieren)

Problem

  • Wenn ein Benutzer eine Verbindung über eine Unterdomäne herstellt, wird seine Sitzung / sein Cookie (unabhängig davon, ob er die Cookie-Option gewählt hat) derzeit in anderen Unterdomänen nicht erkannt.

Frage

  • Was muss getan werden, damit eine Benutzersitzung in allen Unterdomänen von domain.com bestehen bleibt? Mit anderen Worten, ich möchte nicht, dass sich ein Benutzer bei jeder Subdomain anmelden muss.

Antworten:

1 für die Antwort № 1

ändere die php.ini:

session.cookie_domain = domain.com

dann wäre es für alle Subdomains gültig. Dies hängt jedoch davon ab, ob alle Subdomains vom selben Server bereitgestellt werden.

Wenn es sich um mehrere Server handelt, müssen Sie den Sitzungsordner für freigeben NFS. Oder Sie fügen nur ein weiteres Cookie für die automatische Anmeldung hinzu und haben eine separate Sitzung für jede Unterdomäne.

http://en.php.net/manual/en/function.setcookie.php#domain

Beachten Sie jedoch die Sicherheit, die Ihr Cookie für die automatische Anmeldung bietet.