Änderungen an der Globalen Konfiguration lassen sich nicht speichern

From Joomla! Documentation

This page is a translated version of the page Cannot save Global Configuration changes and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎हिन्दी • ‎Nederlands • ‎русский

Im Konfigurations-Bereich des Administrator-"Backends" wird nach Klick auf den "Speichern"- oder "Speichern & Schließen"-Button, um Änderungen der Seiten-Konfiguration zu speichern, erscheint folgende Fehler-Meldung: “Ein Fehler ist aufgetreten! In die Konfigurationsdatei kann nicht geschrieben werden!”, möglicherweise auch “JFTP::write: Bad response”, wenn FTP aktiviert ist.

Gründe für den Fehler

Das Konfigurations-Update-Skript von Joomla! konnte die Inhalte der “configuration.php" nicht ändern, um Änderungen der globalen Konfiguration zu speichern. Joomla! konnte nicht in die Datei schreiben und / oder konnte die Datei nicht schreibbar machen (z.B. R/W). Seit Joomla! 1.5.x versucht, die “configuration.php” vor dem Speichern schreibbar zu machen, ist die zweite Variante wahrscheinlicher. Die wahrscheinlichste Ursache ist, dass die “configuration.php” Eigentum eines anderen Benutzers ist als der, der die Änderungen versucht. Wenn die globale Konfiguration mit aktiviertem FTP verändert werden, wird es dir FTP-Login-ID sein; ist FTP nicht aktiviert wird es ein Web-Server-Prozess sein (oft als sowas wie "apache" oder "www-data" benannt). (Man kann üblicherweise die Datei-Eigentumsrechte mit der Einwahl in die Seite mittels FTP-Programm prüfen. Alternativ kann man eXtplorer verwenden - siehe unten). Leider wird man aus dem gängigen Update der globalen Konfiguration ausgesperrt, da das aktivieren und deaktivieren des FTP-Modus (und dadurch Änderung der Identität beim Versuch, die Konfiguration zu ändern) von der globalen Konfiguration selbst festgelegt wird.

Empfohlene Lösungen

Die “configuration.php” nicht für alle Benutzer schreibbar machen. Resultat wäre, dass man die globale Konfiguration nur einmal updaten kann. Danach macht Joomla! die Datei für alle Benutzer nur-lesbar und das Problem ist wieder da.

Eigentum

Änderung des Eigentums der “configuration.php” entsprechend der FTP-Login-ID bei "FTP aktiviert" oder der Web-Server-Prozess-Identität bei "FTP nicht aktiviert".

Das kann nicht in Joomla! selbst gemacht werden. Hat man die Kontrolle über den Server (z.B. lokaler Server oder virtueller Server) dann sollte man mit einem geeigneten Programm (wie "chown" eines Linux-Servers) dazu in der Lage sein.

Bei einem geteilten Server sollte man den technischen Support der eigenen Organisation oder des Web-Hosting-Providers kontaktieren, das Problem beschreiben und ersuchen, die Datei-Eigentumsrechte entsprechend zu ändern.

Eine Erweiterung verwenden

Installiere die eXtplorer-Komponente (erhältlch im Joomla! Extensions Directory - Category File Management), falls noch nicht vorhanden. Damit können Dateien im "Datei"-Modus (Web-Server-Prozess-Identität) oder im FTP-Modus mit FTP-Login-Benutzer-Identität angesehen und verändert werden. Auch wenn man wahrscheinlich die Eigentumsrechte mit diesem Werkzeug nicht ändern kann, kann mit einer der Modi die “configuration.php” für alle Benutzer beschreibbar gemacht werden. Damit kann die globale Konfiguration einmal geändert werden - oder öfter, wenn dabei der FTP-Modus so verändert wird, dass er mit dem Eigentum der "configuration.php" übereinstimmt (Anmerkung unten beachten).
Note: Änderungen des FTP-Modus betreffen die Eigentumsrechte aller Dateien, die mit den neuen Einstellungen upgeloadet werden (z.B. beim Installieren von Erweiterungen). File ownership advice from ianmac

PHP-Eigentumsrechte prüfen

Den Web-Server PHP mit CGI oder Fast CGI laufen lassen. Damit läuft der PHP-Code mit derselben Benutzer-ID wie beim Upload des Joomla!-Code per FTP. So gibt es keinen Konflikt, da die ID des PHP-Prozesses, die die "configuration.php" ändert, dieselbe wie des Datei-Eigentümers ist. Wenn man nicht weiß, wie CGI oder FastCGI gesetzt wird, fragt man den Server-Administrator oder den Hosting-Service-Provider um Rat.

Hintergrund

Oben Beschriebenes sind vereinfachte Erklärungen, das Folgende kann von Interesse und Wert für alle sein und erfahrenen Benutzern helfen, ihre eigenen Lösungen für das Problem zu formulieren.

  • Die Datei "configuration.php" wird automatisch während der Seiten-Installation im Wurzelverzeichnis der Seite erzeugt (von "configuration.php-dist") und beinhaltet die Seiten-spezifischen Informationen aus dem Installations-Prozess. Änderungen im Konfigurations-Bereich des Administrator-"Backends" werden in "configuration.php" geschrieben, wenn entweder der "Speichern"- oder "Speichern & Schließen"-Button verwendet wird.
  • Wann immer Joomla! die "configuration.php" upzudaten versucht, versucht es sie zuerst schreibfähig und nach dem Update die Datei aus Sicherheitsgründen nicht-schreibfähig (z.B. nur-lesen) zu machen.
  • Dateien des Web-Servers, der Joomla! hostet, gehören verschiedenen Instanzen, abhängig wie und wo sie am Server platziert oder erzeugt wurden. Generell gehören Dateien einer Joomla!-Seite von einer von zwei Instanzen:
    1. Dateien, die per FTP hinaufgeladen oder mit aktiviertem FTP installiert wurden gehören generell der Benutzer-ID, die mit der FTP-Benutzer-ID dieser Seite korrespondiert.
    2. Dateien, die in Joomla! und mit nicht-aktiviertem FTP-Modus installiert wurden, gehören generell der "Phantom"-Benutzer-ID, die für die wesentlichen Web-Server-Prozesse und die Joomla!-Scripte gebraucht wird (oft als sowas wie "apache" oder "www-data" benannt).