Peter: url, modrewrite, session

Beitrag lesen

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.