Session beheer multi domain ( vhost )

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sebastiaan Blaas

Sebastiaan Blaas

09/11/2009 17:18:00
Quote Anchor link
Sessies raken verloren bij laden nieuwe vhost.
Links werken als <categorie>.domain.nl

Zodra een sessie wordt gezet in www.domain.nl ben ik deze kwijt in bla.domain.nl etc

Iemand een oplossing voor dit probleem , of is de enige oplossing een eigen session handler schrijven?
 
PHP hulp

PHP hulp

21/11/2024 21:03:14
 
SilverWolf NL

SilverWolf NL

09/11/2009 19:26:00
Quote Anchor link
Ik heb ff gegoogled, en dit is waarop ik uitkwam:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?PHP
setcookie(session_name(), session_id(), 0, "/", ".yoursite.com");
/*
session_name() geeft de 'naam' van de sessie
session_id() geeft de id, dus de cookie wordt overschreven met dezelfde waarde
0 betekend dat hij weggegooit wordt als de browser sluit
'/' betekend in alle mappen op je domein
'.yoursite.com' betekend dat hij in alle subdomeinen geldig is, maar het schijnt dat het niet geldig zou zijn voor www.yoursite.com, dat moet je zelf ff uitzoeken...
*/

?>


Dit zou je dan dus moeten doen na elke verandering in de session... Is het niet wat makkelijker om het met cookies te doen?

Edit:
Kwam net dit tegen, dit kan je ook gebruiken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?PHP
//bovenaan je pagina, nog voor session_start();!!!!!!!!
ini_set("session.cookie_domain",".yoursite.com");
session_start();
[
/code]
Gewijzigd op 01/01/1970 01:00:00 door SilverWolf NL
 
Klaasjan Boven

Klaasjan Boven

09/11/2009 21:30:00
Quote Anchor link
Dat lijkt me beide niet heel veilig
 
- Ariën  -
Beheerder

- Ariën -

09/11/2009 21:36:00
Quote Anchor link
Beargumenteer eens Klaasjan ;-)
 
- -

- -

09/11/2009 21:39:00
Quote Anchor link
Een mooiere oplossing is om een sessiehandler op een bepaald domein te zetten. Ik weet niet of jij je wel eens op GeenStijl/Dumpert/Spitsnieuws begeeft, maar daar werkt het precies zo.

Kort gezegd: je hebt een bepaald (sub)domein waar je de sessies beheert. Inloggen en uitloggen gaat via dat subdomein. Als een bezoeker op een (sub)domein van jou komt en er nog geen sessie is, wordt de bezoeker doorgestuurd naar de sessiehandler. Die kan dan een sessie meegeven of aangeven dat er geen sessie is. Dit alles gaat zonder output met HTTP-redirects, waardoor het bijna niet te merken is.

Ik raad je aan om even naar GeenStijl/Dumpert/Spitsnieuws te kijken, je ziet heel duidelijk hoe zij dat aanpakken. Hun sessiehandler is http://registratie.geenstijl.nl/.
 
Sebastiaan Blaas

Sebastiaan Blaas

10/11/2009 10:28:00
Quote Anchor link
Bedankt voor alle antwoorden dusver maar denk toch dat ik voor sessie handler in db oplossing ga. Indien ik voor ( nagenoeg ) elke request die nog geen initiated session heeft een extra request moet gaan doen, wordt dit een flinke overload op de server.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.