Sesja rozpocznie phpBB hosting

Usiłuję skonfigurować następujące:

gdzie gdy użytkownik odwiedza sub1.domain.com lub sub2.domain.com i nie jesteś zalogowany, dostają nasunięte na auth.domain.com i może się zalogować. sub1.domain.com i sub2.domain.com są dwa oddzielne wnioski, ale korzystać z tych samych poświadczeń.

Próbowałem ustawienie następujących w moim php.ini:

ale to nie wydaje się być przekazując informacje z jednej domeny do drugiej.

Próbowałem następujące:

Sesja rozpocznie phpBB hosting przywrócić sesji var

Identyfikatory sesji są dokładnie takie same, ale kiedy zrzucić zmiennej $ _SESSION nie pokazuje oba klawisze, tylko cokolwiek klucz I ustawić pod każdej domeny.

Miał dokładnie ten problem - chciałem wartości sesji utworzone na x.example.local być dostępny na example.local i vice versa.

Wszystkie rozwiązania znalazłem powiedział zmienić domenę Session za pomocą php_value session.cookie_domain .example.local w .htaccess (lub poprzez php.ini lub poprzez ini_set).

Połów był ja ustawiania session.cookie_domain dla wszystkich subdomen (do tej pory ok), ale także dla domeny głównej. Ustawianie session.cookie_domain na głównej domenie jest pozornie nie-nie.

Zasadniczo sposób pracował dla mnie:

  • ustaw session.cookie_domain dla wszystkich subdomenach.
  • nie ustawić go do domeny głównej

Och tak, proszę upewnić się, że domena ma TLD (w moim przypadku .local). protokół HTTP nie pozwala cookie / sesje mają być przechowywane w domenie bez .TLD (czyli localhost nie będzie działać, ale stuff.localhost będzie).

EDYTOWAĆ. Również upewnij się, że zawsze wyczyścić cookies przeglądarki podczas sesji testów / debugowania całej subdomen. Jeśli tego nie zrobisz, twoja przeglądarka zawsze wysłać starą sesyjny plik cookie, który prawdopodobnie nie ma prawidłowego cookie_domain jeszcze ustawiony. Serwer będzie ożywić starą sesję i dlatego dostaniesz wyników fałszywie ujemnych. (W wielu postach to wspomniano w użyciu sesion_name ( „rzeczy”) na dokładnie taki sam efekt)

odpowiedział 03 grudnia '13 na 14:10

Mam potwierdzone. Odpowiedź joreon „s jest poprawna. Nie mogę się wypowiedzieć, bo moja reputacja nie wystarczy więc zakładać mój komentarz.

Zdefiniować stałe w pliku konfiguracyjnym. Jeśli chcesz to zmienić, nie trzeba zmieniać całe pliki.

Nazwa sesji nie może składać się tylko z cyfr, co najmniej jedna litera musi być obecny. W przeciwnym razie nowy identyfikator sesji jest generowany za każdym razem.

Użyj następującego kodu, aby rozpocząć korzystanie z sesji

Używam tej funkcji:

odpowiedział 12 maja '15 w 17:56

Użyj tego. to działa:

odpowiedział 05 października '10 na 20:22

to wygląda jak jego ustawienie cookie dla TLD. albo ja czegoś brakuje? - chacham15 20 stycznia '15 w 23:58

Mam pomysł, że nie ma czegoś takiego jak OpenID, jak Joel sugeruje, ale chcesz mieć dostęp do danych sesji w wielu domenach.

hosting

Jedyna możliwość, że mogę myśleć jako rozwiązanie dla tego problemu jest do przechowywania sessiondata w bazie danych, i wyciągnąć go z tej bazy danych.

Przeczytałem wszystkie odpowiedzi powyżej, myślę, że moja odpowiedź jest pomocna dla osób googlowania to.

* Upewnij się, że przeglądarek wysłać ciasteczko sesji z powrotem do serwera (domeny i subdomen), ustawić ciasteczko sesji domeny jako „.example.com”.

* Upewnij się, php znaleźć prawo „target”, aby przywrócić sesji var - Jeśli domeny i subdomeny wskazują na tej samej maszynie (być może różnych hostów wirtualnych), upewnij się, „session_save_path” jest taka sama dla wszystkich (testowałem) - W przypadku domen i subdomen punkt do różnych maszyn, wspólne przechowywanie (jak bazy danych) jest najlepiej do zapisywania i przywracania danych sesji (nie miałem jeszcze przetestować). Użyj „session_set_save_handler”, aby to zrobić.

odpowiedział 21 grudnia '12 w 3:55

Nie mogę mówić za innych wersjach PHP, ale w 5.6.6, po prostu ustawiając wartość session.cookie_domain w pliku php.ini wystarczyły, aby umożliwić wszystkim moim subdomen iPage dzielić ten sam zestaw zmiennych sesyjnych.

Pamiętaj, aby usunąć wszystkie istniejące pliki cookie związane z domeny z przeglądarki do przetestowania.

Och, nie wiem, czy to robi jakąś różnicę, ale Używam również sesji autostart.

odpowiedział 03 listopada '16 w 17:13

Szybki i brudny rozwiązaniem jest wykorzystanie do tego przekierowania:

Spowoduje to dodanie czegoś wzdłuż linii? PHPSESSID = etnm7kbuf5lg0r6tv7je6ehtn4 do adresu URL, który opowiada PHP identyfikator sesji powinien go używać.

odpowiedział 30 czerwca '09 w 18:58

Jest to również pozostawia bardzo podatne na kradzież sesji :) Problem nie jest z identyfikatory sesji nie pasuje (są one zobacz moją zaktualizowaną post), ale dane te nie przemieszczają się między domenami. - dragonmantank 30 czerwca '09 w 19:08

Zgoda, to jest wysoce podatne pozostawiając identyfikator sesji w ciągu kwerendy. - Ian Jamieson 18 lutego '13 w 10:02

Cookies są również wysyłane jako zwykły tekst, nie otwierać żadnych dróg, które nie były już otwarte. Nie mówię, że to dobre rozwiązanie, ale nie jest mniej bezpieczne niż przy użyciu ciasteczek. - sakabako 01 marca '13 w 19:48

Obejrzyj ten film!

Powiązane artykuły

Darmowe phpBB 3 stworzenie strony internetowejMożesz przesłać utworzoną stronę internetową za pomocą FrontPage, Dreamweaver lub ulubionego narzędzia do tworzenia stron internetowych, skorzystać z bezpłatnego Sitebuilder online. lub przesłać zainstalowania dowolnego kompatybilnego skrypt internetowej. Ty...
Darmowe phpBB 3 firm hostingowychMożesz przesłać utworzoną stronę internetową za pomocą FrontPage, Dreamweaver lub ulubionego narzędzia do tworzenia stron internetowych, skorzystać z bezpłatnego Sitebuilder online. lub przesłać zainstalowania dowolnego kompatybilnego skrypt internetowej. Ty...
Free web hosting przestrzeń phpbbMożesz przesłać utworzoną stronę internetową za pomocą FrontPage, Dreamweaver lub ulubionego narzędzia do tworzenia stron internetowych, skorzystać z bezpłatnego Sitebuilder online. lub przesłać zainstalowania dowolnego kompatybilnego skrypt internetowej. Ty...
Darmowy hosting stron internetowych z phpBB 3Możesz przesłać utworzoną stronę internetową za pomocą FrontPage, Dreamweaver lub ulubionego narzędzia do tworzenia stron internetowych, skorzystać z bezpłatnego Sitebuilder online. lub przesłać zainstalowania dowolnego kompatybilnego skrypt internetowej. Ty...
Darmowy hosting stron internetowych z phpbb hostingMożesz przesłać utworzoną stronę internetową za pomocą FrontPage, Dreamweaver lub ulubionego narzędzia do tworzenia stron internetowych, skorzystać z bezpłatnego Sitebuilder online. lub przesłać zainstalowania dowolnego kompatybilnego skrypt internetowej. Ty...