Zur Info
Re: Zur Info
Deine Fehlermeldung kommt nur, weil Du noch das Debug-Script benutzt. Bau das alte wieder ein dann ist die weg.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
If it’s not broken, keep fixing it until it is
Re: Zur Info
Mmmhhhh, stimmt ja
läuft jetzt





läuft jetzt

Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen!
Re: Zur Info
Supi. Dann schreib ich das mal ins Wiki. 

My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
If it’s not broken, keep fixing it until it is
Re: Zur Info
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
If it’s not broken, keep fixing it until it is
Re: Zur Info
Jetzt kann ich doch tatsächlich den CSRF-Fehler auf einem 1und1-Server reproduzieren! Vielleicht komm ich jetzt endlich dahinter.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
If it’s not broken, keep fixing it until it is
Re: Zur Info
Da bin ich ja mal erleichtert 

Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen!
Re: Zur Info
Also ich nicht. 

My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
If it’s not broken, keep fixing it until it is
Re: Zur Info
Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen!
Re: Zur Info
Hatte noch keine Zeit dafür.
My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
If it’s not broken, keep fixing it until it is
Re: Zur Info
Ich vermute, die NAS und 1&1 haben das gleiche Problem. Folgender Hintergrund: BC prüft bei allen Anfragen, ob sich der aufgerufene Pfad innerhalb des Backends befindet. Wenn ja, werden bestimmte Aktionen durchgeführt. Die Überprüfung erfolgt gegen den vollständigen Pfad.
Bei 1&1 ergibt sich als vollständiger Pfad aus $_SERVER['SCRIPT_FILENAME'] etwas wie -> /kunden/homepages/XX/mehrhier/...
Der Pfad, mit dem verglichen wird, stammt aus der Konstanten CAT_ADMIN_PATH, welche wiederum aus CAT_PATH und CAT_BACKEND_PATH zusammengesetzt ist. Beide findet man in der config.php. Bei 1&1 ergibt das nunmehr -> /homepages/XX/mehrhier/...
Es fehlt also das /kunden/ am Anfang.
Wie kommt es zu dem Unterschied? Nun, $_SERVER ist eine Servervariable, die der Webserver setzt. CAT_PATH wird aus der PHP-Funktion dirname() heraus gesetzt, verwendet also Dateisystemfunktionen. Das sind zwei unterschiedliche Quellen, die daher auch unterschiedliche Ergebnisse liefern können.
In der Folge erkennt BC nun nicht, daß sich der Pfad im Backend-Bereich befindet, und kann die notwendigen Aktionen nicht ausführen. Nun denkt man sich, na dann hole ich das eben in dem AJAX-Script nach, also dort, wo der CSRF-Fehler auftaucht. Das geht aber nicht. Hat was mit Henne-Ei zu tun.
UND WAS NUN?
Die Lösung besteht darin, den Pfad, der in $_SERVER steht, in die config.php zu schreiben.
SUCHEN
ERSETZEN DURCH
Bitte ausprobieren und Ergebnis mitteilen. 
Bei 1&1 ergibt sich als vollständiger Pfad aus $_SERVER['SCRIPT_FILENAME'] etwas wie -> /kunden/homepages/XX/mehrhier/...
Der Pfad, mit dem verglichen wird, stammt aus der Konstanten CAT_ADMIN_PATH, welche wiederum aus CAT_PATH und CAT_BACKEND_PATH zusammengesetzt ist. Beide findet man in der config.php. Bei 1&1 ergibt das nunmehr -> /homepages/XX/mehrhier/...
Es fehlt also das /kunden/ am Anfang.
Wie kommt es zu dem Unterschied? Nun, $_SERVER ist eine Servervariable, die der Webserver setzt. CAT_PATH wird aus der PHP-Funktion dirname() heraus gesetzt, verwendet also Dateisystemfunktionen. Das sind zwei unterschiedliche Quellen, die daher auch unterschiedliche Ergebnisse liefern können.
In der Folge erkennt BC nun nicht, daß sich der Pfad im Backend-Bereich befindet, und kann die notwendigen Aktionen nicht ausführen. Nun denkt man sich, na dann hole ich das eben in dem AJAX-Script nach, also dort, wo der CSRF-Fehler auftaucht. Das geht aber nicht. Hat was mit Henne-Ei zu tun.

UND WAS NUN?
Die Lösung besteht darin, den Pfad, der in $_SERVER steht, in die config.php zu schreiben.
SUCHEN
Code: Alles auswählen
define('CAT_PATH', dirname(__FILE__));
Code: Alles auswählen
define('CAT_PATH', '/kunden/homepages/xx/whatever/...');

My software never has bugs, it just develops random features.
If it’s not broken, keep fixing it until it is
If it’s not broken, keep fixing it until it is