splinter: url, modrewrite, session

Hallo zusammen.

Ich lasse die URL mit ModRewrite so umleiten:

"/home/" --> "/index.php?page=home"

Das Problem sind nun die Folgelinks im Quelltext, also hab ich vor gleich ganze URL's anzugeben:

href="http://domain.tld/home/"

Und weils so schön ist, wirds dann gleich ne weitere Hässlichkeit geben: Wenn ein User über www.domain.tld die Seite aufruft wird er nachher umgeleitet. Ich denke mit $_SERVER['HTTP_HOST'] könnte man dieses Problem auch lösen. Eigentlich wäre diese Umleitung nicht weiter schlimm, aber wenn ich das Wissen eines durchschnittlichen Internetusers betrachte, möchte ich nun doch Verwirrungen verhindern.

Falls jemand andere Vorschläge hat, bitte melden.

Jetzt mein Hauptproblem:
Das Cookie mit der PHPSESSID ist nur entweder unter www.domain.tld oder nur unter domain.tld gültig was ich relativ hässlich finde.

Weis jemand eine Lösung?

Gruss splinter

  1. Ich lasse die URL mit ModRewrite so umleiten:

    "/home/" --> "/index.php?page=home"

    Als Redirect, oder nur intern?

    Das Problem sind nun die Folgelinks im Quelltext, also hab ich vor gleich ganze URL's anzugeben:

    href="http://domain.tld/home/"

    Wo willst du diese Angabe machen? In mod_rewrite? Oder in den Links?

    Und weils so schön ist, wirds dann gleich ne weitere Hässlichkeit geben: Wenn ein User über www.domain.tld die Seite aufruft wird er nachher umgeleitet. Ich denke mit $_SERVER['HTTP_HOST'] könnte man dieses Problem auch lösen. Eigentlich wäre diese Umleitung nicht weiter schlimm, aber wenn ich das Wissen eines durchschnittlichen Internetusers betrachte, möchte ich nun doch Verwirrungen verhindern.

    User sind weitaus schwieriger zu verwirren, als du glaubst. Solange man eine URL eingeben kann und dann die Seite kommt, ist das Thema vollkommen egal.

    Jetzt mein Hauptproblem:
    Das Cookie mit der PHPSESSID ist nur entweder unter www.domain.tld oder nur unter domain.tld gültig was ich relativ hässlich finde.

    Weis jemand eine Lösung?

    Es gibt keine Lösung. Cookies sind domainbezogen. Du kannst zwar für *.domain.tld ein Cookie setzen, dass dann für www.domain.tld gelten würde, und für jede andere Subdomain auch. Aber es wird niemals für domain.tld gelten können.

    Nimm das so hin, oder entscheide dich, nur eine der zwei Domains produktiv zu benutzen, und die Requests auf die jeweils andere Domain umzuleiten.

    Hat auch den Vorteil, dass Suchmaschinen dich nicht doppelt finden und das ggf. negativ werten.

    1. "/home/" --> "/index.php?page=home"

      Als Redirect, oder nur intern?

      Nur intern!

      Das Problem sind nun die Folgelinks im Quelltext, also hab ich vor gleich ganze URL's anzugeben:

      href="http://domain.tld/home/"

      Wo willst du diese Angabe machen? In mod_rewrite? Oder in den Links?

      In den Links. (Quelltext)

      Und weils so schön ist, wirds dann gleich ne weitere Hässlichkeit geben: Wenn ein User über www.domain.tld die Seite aufruft wird er nachher umgeleitet. Ich denke mit $_SERVER['HTTP_HOST'] könnte man dieses Problem auch lösen. Eigentlich wäre diese Umleitung nicht weiter schlimm, aber wenn ich das Wissen eines durchschnittlichen Internetusers betrachte, möchte ich nun doch Verwirrungen verhindern.

      User sind weitaus schwieriger zu verwirren, als du glaubst. Solange man eine URL eingeben kann und dann die Seite kommt, ist das Thema vollkommen egal.

      Da kennst du meinen Bekanntenkreis nicht. =)
      Egal, wenn ich die SessionCookies nicht so hinbekomme dass sie auf allen Subdomains UND auf domain.tld muss ich das machen.

      Jetzt mein Hauptproblem:
      Das Cookie mit der PHPSESSID ist nur entweder unter www.domain.tld oder nur unter domain.tld gültig was ich relativ hässlich finde.

      Weis jemand eine Lösung?

      Es gibt keine Lösung. Cookies sind domainbezogen. Du kannst zwar für *.domain.tld ein Cookie setzen, dass dann für www.domain.tld gelten würde, und für jede andere Subdomain auch. Aber es wird niemals für domain.tld gelten können.

      Nimm das so hin, oder entscheide dich, nur eine der zwei Domains produktiv zu benutzen, und die Requests auf die jeweils andere Domain umzuleiten.

      Hässlich! Jetz fallen mir erst die ganzen Redirect's im Internet auf.
      Beispiel http://google.ch

      Vielen Dank

  2. hi,

    Das Problem sind nun die Folgelinks im Quelltext, also hab ich vor gleich ganze URL's anzugeben:

    href="http://domain.tld/home/"

    Dass PHP das initiale automatische Anhängen der SID (als Fallback für deaktivierte Cookies) bei solchen Links nicht macht, ist dir bewusst?

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. hi

      Das Problem sind nun die Folgelinks im Quelltext, also hab ich vor gleich ganze URL's anzugeben:

      href="http://domain.tld/home/"

      Dass PHP das initiale automatische Anhängen der SID (als Fallback für deaktivierte Cookies) bei solchen Links nicht macht, ist dir bewusst?

      Was ist denn das?? Von so was hab ich noch nie gehört! Wo liegt der Sinn hinter dem ganzen und was sind die genauen Auswirkungen. Versteh nur Bahnhof.

      gruss splinter

      1. hi,

        Dass PHP das initiale automatische Anhängen der SID (als Fallback für deaktivierte Cookies) bei solchen Links nicht macht, ist dir bewusst?

        Was ist denn das?? Von so was hab ich noch nie gehört! Wo liegt der Sinn hinter dem ganzen und was sind die genauen Auswirkungen. Versteh nur Bahnhof.

        Dann würde ich empfehlen, dass du das Kapitel über Sessions im PHP-Manual noch mal aufmerksam durchliest - insb. was die Übergabe der Session-ID angeht.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. hi

          Dass PHP das initiale automatische Anhängen der SID (als Fallback für deaktivierte Cookies) bei solchen Links nicht macht, ist dir bewusst?

          Was ist denn das?? Von so was hab ich noch nie gehört! Wo liegt der Sinn hinter dem ganzen und was sind die genauen Auswirkungen. Versteh nur Bahnhof.

          Dann würde ich empfehlen, dass du das Kapitel über Sessions im PHP-Manual noch mal aufmerksam durchliest - insb. was die Übergabe der Session-ID angeht.

          session.use_only_cookies hab ich auf 1.
          Ist mir zu unsicher.

          gruss splinter