Seite 1 von 2
cookie fehler (firefox)
Verfasst: Sa 19. Nov 2011, 21:51
von benny
Bei der 12er Version funktioniert der Login nicht mehr, wenn der Firefox genutzt wird.
Woran könnte das liegen? Fehlendes js vielleicht?
b.
Re: cookie fehler (firefox)
Verfasst: Sa 19. Nov 2011, 22:11
von Xantiva
Meine Glaskugel ist kaputt. Hast Du vielleicht mal eine URL?
(Nein, der Shop benötigt kein JavaScript für eine Anmeldung.)
Re: cookie fehler (firefox)
Verfasst: Mo 21. Nov 2011, 02:20
von benny
Läuft auf nem schwach gesicherten Test-Server, daher würd ich gern das posten der url vermeiden...
Hier mehr Details:
Ich rufe die Startseite auf. (index.php)
Gebe Name+PW im Login-Bereich ein.
Internet Explorer 8 -> Es erscheint die Admin-Leiste, alles in Ordnung
Firefox 8 -> Werde weitergeleitet zu cookie_usage.php
Hab im Netz ein Cookie-Test gefunden. Dort kann ich beim Firefox erfolgreich mit den aktuellen Einstellungen cookies setzen, speichern, lesen. Auch so scheint der FF keine Probleme mit demUmgang von cookies zu haben...
Hat jemand ne Idee?
b.
Re: cookie fehler (firefox)
Verfasst: Mo 21. Nov 2011, 12:56
von Xantiva
Du kannst mir auch gerne die URL per PN senden ...
Re: cookie fehler (firefox)
Verfasst: Mo 21. Nov 2011, 21:39
von Xantiva
Hallo Benny,
zum einen kann ich Dein Problem hier auch nachstellen. Aber ... dyndns ...
Ich weis nicht, ob da alle so sauber durchgeleitet wird. Passiert das auch, wenn Du lokal auf dem Rechner arbeitest?
Ciao,
Mike
Re: cookie fehler (firefox)
Verfasst: Mo 21. Nov 2011, 23:27
von benny
Der Rechner steht nicht bei mir und besitzt weder Monitor noch 'Tastatur.
Daher kann ich das nur schwer lokal testen,ob der Fehler auch ohne "dyndns" kommt.
Allerdings sollte es keine Rolle spielen. Ich kann auch die direkte IP nutzen. Eine Fritzbox leitet das Ganze dann zu dem genutzten Rechner. Dazu kommt, dass ich einige andere Shopsysteme "so" getestet habe und nie ein cookie-Fehler auftauchte.
@Xantiva, also ping den server, dann nehm die ip und probier selbst. Du wirst keinen Unterschied merken.
KAnn mir jemand sagen, wo im Quelltext Umleitung zur cookie_usage.php definiert ist?
Ich finde gerade nur:
Code: Alles auswählen
// set the session cookie parameters
if (function_exists('session_set_cookie_params')) {
session_set_cookie_params(0, '/', (xtc_not_null($current_domain) ? '.'.$current_domain : ''));
}
elseif (function_exists('ini_set')) {
ini_set('session.cookie_lifetime', '0');
ini_set('session.cookie_path', '/');
ini_set('session.cookie_domain', (xtc_not_null($current_domain) ? '.'.$current_domain : ''));
}
in der application_top.php
benny
Re: cookie fehler (firefox)
Verfasst: Mo 21. Nov 2011, 23:42
von Doc Olson
Ist $current_domain denn auch gleich der dyndns-domain? Bist Du sicher, dass bei den anderen malen nicht der Fallback auf die Session-ID in der URL stattgefunden hat? Letzteres gibt es beim webs nämlich nicht mehr. Das mag der Unterschied sein.
Re: cookie fehler (firefox)
Verfasst: Mo 21. Nov 2011, 23:45
von Xantiva
Such mal im Quellcode nach FILENAME_COOKIE_USAGE ...
In der login.php:
Code: Alles auswählen
// redirect the customer to a friendly cookie-must-be-enabled page
// if cookies are disabled (or the session has not started)
if ($session_started == false) {
xtc_redirect(xtc_href_link(FILENAME_COOKIE_USAGE));
}
Schau mal was var_dump($session_started) liefert.
Re: cookie fehler (firefox)
Verfasst: Di 22. Nov 2011, 16:07
von benny
Die $current_domain zeigt mir "dyndns.org"
Ist das korrekt?
Die $session_started hab ich in der cookie_usage.php ausgelesen: Resultat: false.
Allerdings kann ich z.B. die
$_SESSION['language'] auslesen, womit die Funktion "session_start();" aufgerufen sein sollte.
Also ist das Problem, dass die Variable $session_started beim FF nicht gesetzt wird?
Nachtrag:
Code: Alles auswählen
$session_started = false;
if (SESSION_FORCE_COOKIE_USE == 'True') {
xtc_setcookie('cookie_test', 'please_accept_for_session', time() + 60 * 60 * 24 * 30, '/', $current_domain);
if (isset ($_COOKIE['cookie_test'])) {
session_start();
include (DIR_WS_INCLUDES.'tracking.php');
$session_started = true;
} else { !!! aktueller Zustand !!!}
} else {
session_start();
include (DIR_WS_INCLUDES.'tracking.php');
$session_started = true;
}
Bei der zweiten if-Antweisung (application_top.php) geht er in den "else"-Bereich. -> $_COOKIE['cookie_test'] ist nicht gesetzt... also wird session_start(); wohl doch nicht aufgerufen...
b.
Re: cookie fehler (firefox)
Verfasst: Di 22. Nov 2011, 17:10
von Doc Olson
Firefox greift auf die Domain dyndns.org zu. Wenn im Shop selbst (config.php) aber eine andere Domain angegeben ist (so meine Vermutung), liefert der Shop kein Cookie für dyndns aus sondern für ne andere Domain. Ergo akzeptiert FF den Cookie nicht.
Andere Frage: wieso überhaupt dyndns? Kein Geld für nen 5 Euro Webspace?