Timm: Session-ID am Anfang in URL

Hallo,

eigentlich will ich, dass die Session-ID nur via Cookies übergeben wird. Das funktioniert auch soweit.
Allerdings wird beim ersten Laden der Seite (wo also noch kein Cookie vorher gesetzt ist) an alle Links die Session-ID drangehängt, was ich verhindern will.
Wie kann ich das umgehen?

  1. Hallo!

    eigentlich will ich, dass die Session-ID nur via Cookies übergeben wird. Das funktioniert auch soweit.
    Allerdings wird beim ersten Laden der Seite (wo also noch kein Cookie vorher gesetzt ist) an alle Links die Session-ID drangehängt, was ich verhindern will.
    Wie kann ich das umgehen?

    Siehe Manual: http://de3.php.net/session#session.configuration

    session.use_only_cookies (http://de3.php.net/session#ini.session.use-only-cookies)
    session.use_trans_sid (http://de3.php.net/session#ini.session.use-trans-sid)

    Grüße
    Andreas

    1. Das kenne ich schon. session.use_only_cookies kann ich auch problemlos auf true setzen, jedoch habe ich nicht die Rechte session.use_trans_sid zu verändern. Wenn ich eine .htaccess-Datei in meinem Web-Verzeichnis mit diesen Flags anlege, dann bekomme ich einen Internal Server Error.

      1. Hallo!

        Das kenne ich schon. session.use_only_cookies kann ich auch problemlos auf true setzen, jedoch habe ich nicht die Rechte session.use_trans_sid zu verändern. Wenn ich eine .htaccess-Datei in meinem Web-Verzeichnis mit diesen Flags anlege, dann bekomme ich einen Internal Server Error.

        Welche PHP-Version hast Du? "session.use_only_cookies" geht erst seit 4.3.0.
        Wie sind beide Parameter lauft phpinfo() eingestellt?
        Möglicherweise reicht die Verwendung von "session.use_only_cookies"? Ich hab das noch nie versucht.

        Mit der .htaccess klappt leider nur wenn Du nicht CGI verwendest, machst Du das? (phpinfo(): Server API)

        http://de3.php.net/manual/de/configuration.changes.php

        Sonst kannst Du es mal versuchen die Änderungen über eine eigene php.ini im betroffenen Ordner zu erreichen.

        Grüße
        Andreas

        1. Also phpinfo liefert "PHP Version 4.3.1" zurück, sollte also deswegen funktionieren.

          "Wie sind beide Parameter lauft phpinfo() eingestellt?"
          <---- Komischer Satz. ;-)

          Die Verwendung von "session.use_only_cookies" reicht nicht aus, habe ich schon ausprobiert. :(

          "Mit der .htaccess klappt leider nur wenn Du nicht CGI verwendest, machst Du das? (phpinfo(): Server API)"

          Was bedeutet das mit phpinfo in den Klammern?
          Also ich verwende soweit ich weiß kein CGI. (ist aber IMHO aktiviert, könnte ich also verwenden)

          "Sonst kannst Du es mal versuchen die Änderungen über eine eigene php.ini im betroffenen Ordner zu erreichen."

          Wie muss denn so einen php.ini aufgebaut sein? Muss ich dort alle Flags auflisten oder nur die, die ich verändern will?

          Cu

          1. Hallo!

            Also phpinfo liefert "PHP Version 4.3.1" zurück, sollte also deswegen funktionieren.

            jo.

            "Wie sind beide Parameter lauft phpinfo() eingestellt?"
            <---- Komischer Satz. ;-)

            "laut" ;-)

            Mit anderen Worten: was sagt Dir phpinfo() (oder ini_get(), oder...) bzgl. "session.use_only_cookies" und "session.use_trans_sid"?

            Die Verwendung von "session.use_only_cookies" reicht nicht aus, habe ich schon ausprobiert. :(

            Wunder mich dann allerdings was dieser Parameter soll...

            "Mit der .htaccess klappt leider nur wenn Du nicht CGI verwendest, machst Du das? (phpinfo(): Server API)"

            Was bedeutet das mit phpinfo in den Klammern?

            wenn Du phpinfo() ausführst, findest Du in der Ausgabe recht weit oben "Server-API", wo z.B. "CGI", "Apache"... steht.

            Also ich verwende soweit ich weiß kein CGI. (ist aber IMHO aktiviert, könnte ich also verwenden)

            CGI ist die Schnittstelle, entweder verwendest der Webserver CGI oder irgendeine Modul-Schnittstelle.
            Das kannst Du Dir sicher nicht aussuchen wenn Du nichtmal Zugriff auf die php.ini hast ;-)

            "Sonst kannst Du es mal versuchen die Änderungen über eine eigene php.ini im betroffenen Ordner zu erreichen."

            Wie muss denn so einen php.ini aufgebaut sein? Muss ich dort alle Flags auflisten oder nur die, die ich verändern will?

            Ich hab das vor Urzeiten mal gemacht, ich denke es müsste ausreichen nur die zu ändernden Parameter einzufügen. zur Not musst Du halt noch die paar Parameter, die sich laut phpinfo() vom Default-Wert unterscheiden mit einbauen, aber ich denke das ist nicht nötig. Probiers aus! (und melde das Ergebnis ;-))

            Grüße
            Andreas

            PS: Es würde die Lesbarkeit fördern wenn Du so zitierst wie vorgesehen, Danke.

            1. Ok, Danke. Als Server API ist nur Apache eingetragen.
              Nach welcher Syntax muss ich dass den in die php.ini schreiben? (ich verwende jetzt einfach mal die gleich Syntax wie ich sie bei der .htaccess-Datei verwendet habe)

              Zu den Zitaten: Das mit den ganzen '<' war etwas verwirrend, da habe ich es komplett weggelassen. ;-)

              1. Hallo!

                Ok, Danke. Als Server API ist nur Apache eingetragen.

                OK, dann hängt das Funktionieren PHP-Einstellungen von den httpd_conf Einstellungen ab. Siehe http://de3.php.net/manual/de/configuration.changes.php

                Nach welcher Syntax muss ich dass den in die php.ini schreiben? (ich verwende jetzt einfach mal die gleich Syntax wie ich sie bei der .htaccess-Datei verwendet habe)

                Das ist falsch. .htaccess -> Apache-Konfiguration, php.ini -> PHP-Konfiguration. Da wird nicht dieselbe Syntax verwendet.

                Siehe Link oben, und: http://cvs.php.net/co.php/php-src/php.ini-recommended

                Zu den Zitaten: Das mit den ganzen '<' war etwas verwirrend, da habe ich es komplett weggelassen. ;-)

                Ach was, normalerweise wird "»» " als Zitatzeichen verwendet, das heißt alles was danach kommt wird als Zitat erkannt - bis zum nächsten Zeilenumbruch. Das Zitatzeichen kannst Du auch ändern (neben vielen anderen Einstellungsmöglichkeiten) wenn Du Dich registrierst, ich verwende z.B. "| ", siehe: </cgi-bin/fo_userconf>.

                Grüße
                Andreas