JFolder::create: could not create directory - Joomla
Habe ich am Ende folgende Fehlermeldung, wenn ich versuche zu installieren eine Komponente,Modul oder plugin.
JFolder::create: Could not create directory
Was könnte das Problem sein?
- Ordner-Berechtigungen?
- möglich, Duplikat der JFolder::create: Kann nicht erstellen Verzeichnis auf allen Seiten
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ändern Sie die unten-variable in der Konfigurationsdatei(
configuration.php
) wie gezeigt.Stellen Sie außerdem sicher, dass diese Ordner die Ordner die Berechtigung 755.
Lesen Sie mehr
Nun fand ich zwei Lösungen zur Behebung des Problems,und beide von Ihnen hat schon sehr gut funktioniert:
Lösung Ein:
Finden Sie zuerst den genauen, absoluten Pfad zu Ihrer
tmp
Ordner mit diesem trick:Erstellen Sie eine PHP-Datei in deinem website root,zum Beispiel
path.php
Stelle in diesem code-snippet in der Datei und drücken Sie die Taste speichern
Navigieren Sie zu
yourdomain.com/path.php
in Ihrem browserAb jetzt:
"Absolute Path(you've just found)"/tmp
Fügen Sie diese Zeile in den code .htaccess-Datei:
php_value open_basedir NULL
Diese Lösung hat sehr gut funktioniert für mich,und es ist nicht jede Joomla-core-Datei hacking.
Lösung Zwei:
/public_html/tmp
nurtmp
$obd = ini_get('open_basedir');
Kommentieren Sie diese Zeile mit //am Anfang wird es://$obd = ini_get('open_basedir');
Können Sie ändern Sie den Besitzer der Joomla-Ordner Ihrer apache-server-Benutzer.
Finden Sie die apache-server-Benutzer mit dem folgenden Befehl:
Quelle: https://serverfault.com/questions/125865/finding-out-what-user-apache-is-running-as
Für Ubuntu, ist es
www-data
.Nachdem Sie den apache-Benutzer-Namen, dann Sie können ändern, der Besitzer aller Ordner und Dateien Ihrer Joomla-installation. Sie können den folgenden Befehl verwenden, um so zu tun:
(Ich nehme an, dass Ihr apache Benutzer ist
www-data
)Wenn Sie bereits in Ihrem Joomla-Verzeichnis, dann können Sie den folgenden Befehl ausführen:
Nach einer Menge ärger mit diesem Fehler, ich habe eine Pause durch.
In der configuration.php Datei, Bearbeiten Sie die var logpath n tmppath Werte wie unten
var $log_path = '/home/public_html/sitename/logs';
var $tmp_path = '/home/public_html/sitename/tmp';
Diese auf jeden Fall funktionieren wird. Und arbeitet für mich.