susi: session auf https

hallo,

bau gerade ein mini shop tool und will den per session-variablen erzeugten shop von http beim zahlen auf den https server umleiten!
nun sind aber alle meine session-daten durch den wechsel weg.

liegt dies an dem virtualhost über den https auf apache läuft?

wei werden sonst daten hierbei transferiert?

lg, susi

  1. Moin!

    bau gerade ein mini shop tool und will den per session-variablen erzeugten shop von http beim zahlen auf den https server umleiten!
    nun sind aber alle meine session-daten durch den wechsel weg.

    Cookies werden nicht zwingend auch an den https-Host übertragen, wenn sie nur von http gesetzt wurden.

    Außerdem müssen die beiden Hosts nicht zwingend den identischen Skriptparametern gehorchen, sondern könnten durchaus unterschiedlich konfiguriert sein.

    wei werden sonst daten hierbei transferiert?

    Naja, die übliche Methode ist tatsächlich, dass du
    a) sicherstellst, dass sowohl dein HTTP-PHP als auch dein HTTPS-PHP auf die gleichen Sessiondateien auf dem Server zugreifen können, und dies auch tun.
    b) die Session-ID auf einem geeigneten Weg von HTTP nach HTTPS übermittelst. Standardmäßig geht das seitens PHP über Cookies, alternativ über Session-IDs in der URL oder in Formularen. Allerdings: PHP fügt die URL-IDs nur dann automatisch ein, wenn der Link KEINE Protokollangabe und keine Serverangabe enthält - bei Links zu HTTPS müssen die aber natürlich angegeben werden, also mußt du hier im Zweifel manuell ansetzen. Das Gleiche dürfte für Formulare gelten.

    Es ist kein Problem, standardmäßig auf Sessions per Cookie zu setzen, und den Transfer von HTTP auf HTTPS dann per URL- oder Formular-Session-ID zu erledigen. PHP merkt sich nicht, welcher der drei Mechanismen erfolgreich war, es akzeptiert jeden zu jeder Zeit - und bei Gleichzeitigkeit vorrangig die Cookies.

    - Sven Rautenberg

    1. danke mit dem übertrag von sessionid geht es!