Warning: session_start(): open(/www/htdocs/w017651d/tmp/wiki//sess_433b190ad5e6540b30cbf0e78d7b899e, O_RDWR) failed: No such file or directory (2) in /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/init.php on line 247

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/init.php:247) in /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/init.php on line 247

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/init.php:247) in /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/auth.php on line 424

Warning: session_write_close(): open(/www/htdocs/w017651d/tmp/wiki//sess_433b190ad5e6540b30cbf0e78d7b899e, O_RDWR) failed: No such file or directory (2) in /www/htdocs/w017651d/wiki.blackcat-cms.org/doku.php on line 121

Warning: session_write_close(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/www/htdocs/w017651d/tmp/wiki/) in /www/htdocs/w017651d/wiki.blackcat-cms.org/doku.php on line 121

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/init.php:247) in /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/actions.php on line 210

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/w017651d/wiki.blackcat-cms.org/inc/init.php:247) in /www/htdocs/w017651d/wiki.blackcat-cms.org/lib/tpl/dokuwiki/main.php on line 12
CSRF Fehlermeldung in Backend -> Addons [BlackCat CMS Dokumentation, Tutorials, Tipps und Tricks]

Benutzer-Werkzeuge

Webseiten-Werkzeuge


faq:errors:csrf

CSRF Fehlermeldung in Backend -> Addons

Fehlerbild

Im Backend ist das Verwalten von Addons nicht möglich. Es erscheint ein Dialog mit folgender Meldung:

Uncaught AJAX Error. <br /> <b>Notice</b>: Undefined index: csrf in <b>/path/to/blackcat/backend/addons/ajax_get_details.php</b> on line <b>233</b><br /> […]

Lösung

Sehr wahrscheinlich unterscheidet sich der Pfad in $_SERVER (wird vom Webserver gesetzt) von dem in dirname(). (Erklärung siehe unten.)

In diesem Fall hilft es, den Pfad in der config.php auf den korrekten Pfad zu setzen.

define('CAT_PATH', dirname(__FILE__));

ändern in (Beispiel, Pfad entsprechend anpassen!)

define('CAT_PATH', '/path/to/blackcat');

Forum

Pathtester

pathtest.zip

Enthaltene Datei in das BlackCat-Installationsverzeichnis entpacken (da wo config.php und index.php liegen) und im Browser aufrufen. Meldet [OK] wenn die Pfade übereinstimmen, andernfalls wird die notwendige Änderung angezeigt.

Unterschied $_SERVER und dirname()

Aus einem Script heraus kann man mit der Funktion dirname(FILE) das aktuelle Arbeitsverzeichnis ermitteln. Das funktioniert in etwa so wie pwd unter Linux. BlackCat CMS verwendet daher diese Methode, um das lokale Verzeichnis zu ermitteln, in dem die config.php liegt. Das ist das Installationsverzeichnis des CMS und damit die Basis für alle Aktionen.

Der Webserver befüllt auf Basis seiner Konfigurationseinstellungen das $_SERVER-Array. Das ist eine Liste von Variablen, die Informationen über die Serverumgebung beinhalten. Dazu gehört auch der Aufrufpfad des aktuell ausgeführten Scriptes.

Im Gegensatz zu dirname() (oder pwd) sind die Pfadangaben in $_SERVER nicht absolut, sondern werden von den Konfigurationseinstellungen beeinflußt. So kann es vorkommen, daß die beiden Pfade, die eigentlich gleich sein sollten, unterschiedlich sind. Die einzige Stelle, an der sich das auswirkt, ist unseres Wissens eben die hier beschriebene.

Weitere Informationen:

http://blog.eye48.com/post/17154778683/symlinks-php-realpath-lesson-learned (Englisch)

faq/errors/csrf.txt · Zuletzt geändert: 2014/10/30 00:00 (Externe Bearbeitung)