ilch Forum » Allgemein » HTML, PHP, SQL,... » ilch CMS - User Session ID - Aufklärung

Geschlossen
  1. #1
    User Pic
    Ahrtas Moderator
    Registriert seit
    17.12.2007
    Beiträge
    2.368
    Beitragswertungen
    210 Beitragspunkte
    Wie der Titel schon sagt möchte ich in diesem Thema einwenig über die Session-ID sprechen die generiert wird sobald ein User eine Webseite aufruft die auf ilch basiert.

    Die Session-ID ist ja eine einzigartige Identifikationsnummer die generiert wird und dem Besucher zugeordnet wird.
    Mit dieser ID wird dann zum Beispiel verhindert dass ein Besucher doppelt gezählt wird in der Besucherstatistik und der Besucher eindeutig vom CMS erfasst wird. Somit lässt sich mit Hilfe der Session-ID einige nützliche Dinge realisieren.

    Aber um damit zu Arbeiten muss man die Session-ID erst richtig verstehen UND das ist der Punkt. lächeln


    Über
    print_r($_SESSION);
    können in PHP alle Werte ausgeben werden die einem User zugeteilt werden.
    Darunter findet man gewisse Dinge wie User-ID, User-Recht, letzter Login-Zeitpunkt usw. schließlich auch die Session-ID.

    Mit diesen Daten kann man in PHP weiter Arbeiten und die unterschiedlichsten Funktionen entwickeln die z.B. auf den User zugeschnitten sind.


    Was mir über die Session-ID bisher bekannt ist:
    • sie ist ein Unikat, dieselbe wird kein zweites mal zur gleichen Zeit vergeben
    • sie gilt nicht ewig, nach einer bestimmten Zeit ist sie ungültig
    • sie wird vergeben unabhängig ob der User angemeldet/registriert ist oder nicht


    Nun für mich selbst ist wichtig zu wissen wie sie funktioniert, also wie lange sie gültig ist, ob der Zeitraum der Gültigkeit bestimmt werden kann und durch welche Aktionen die Session-ID ungültig wird wie z.B. durch Schließen des Browsers.. etc.


    - - - - - - - - - -


    Vielleicht kann sich der ein oder andere an meine Downloads erinnern, auf meiner eigenen Webseite.
    Dort habe ich zu jedem Download ein eigen entwickelter "Like-Button" eingefügt, wie man ihn z.B. von Facebook kannte - also ich habe die Session-ID genutzt um eindeutige Likes für den jeweiligen Download zu zählen.
    Und dadurch habe ich auch bemerkt dass die Session-ID nicht ewig gültig ist, denn nach meinem Like konnte ich einige Zeit später dasselbe wieder liken, das selbe Szenario hat sich denke ich auch bei den Crawlern bzw. Bots abgespielt die diesen Link/Like-Button ständig abgesucht haben und so schlussendlich viele Likes generiert wurden die analytisch Müll waren.

    Um sowas in Zukunft zu vermeiden, möchte ich jetzt die Session-ID mehr hinterfragen. lächeln


    Wer hat dazu noch weitere Informationen und möchte diese mit der Community teilen?
    Wäre ein FAQ-Eintrag zu dem Thema nicht auch sehr hilfreich?
    1 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.298
    Beitragswertungen
    360 Beitragspunkte
    Wenn ich hier nichts durcheinander gebracht habe, sieht die Sache so aus:

    index.php
    session_name  ('sid');
    session_start ();

    php.net/manual/de/function.session-name.php
    php.net/manual/de/function.session-start.php

    ZitatZitat
    session.cookie_lifetime definiert die Cookie-Lebensdauer, die an den Browser geschickt wird, in Sekunden. Der Wert 0 bedeutet "bis der Browser geschlossen wird." Grundeinstellung 0. Siehe auch session_get_cookie_params() und session_set_cookie_params().

    php.net/manual/de/session.configuration.php#ini.session.cookie-lifetime

    $CookieInfo = session_get_cookie_params();
    print_r($CookieInfo);

    Hiermit konnte ich bestätigen, dass die Cookie-Lebensdauer auf dem Standardwert ist.
    ZitatZitat
    Array ( [lifetime] => 0 [path] => / [domain] => [secure] => [httponly] => )

    Das heißt: Nachdem der Browser geschlossen bzw. Cookie gelöscht wurde, bekommt man beim nächsten Besuch eine neue Session-ID.

    Der Cookie, welcher gesetzt wird, wenn man sich einloggt ist ein Jahr gültig und wird beim ausloggen gelöscht. Das hatte ich nebenbei noch gesehen.


    Zuletzt modifiziert von blackcoder am 03.10.2015 - 08:43:05
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten