it-swarm.com.de

Wie gehe ich mit "JFolder :: create: Pfad nicht in open_basedir-Pfaden. Ziel kann nicht erstellt werden" bei der Installation von Joomla-Erweiterungen um?

Ich versuche, eine neue Erweiterung in Joomla zu installieren, erhalte jedoch folgende Fehlermeldung: "JFolder :: create: Pfad nicht in open_basedir-Pfaden. Ziel kann nicht erstellt werden."

Was ist die Lösung?

6
Hbirjand

Ich habe eine andere Lösung getestet, danke an den Benutzer @ farahmand und es hat sehr gut funktioniert und ich habe beschlossen, eine Schritt-für-Schritt-Anleitung für die Lösung bereitzustellen

Lösung Eins:

Ermitteln Sie zunächst den genauen absoluten Pfad zu Ihrem tmp -Ordner, indem Sie diesen Trick anwenden:

Erstellen Sie eine PHP Datei im Stammverzeichnis Ihrer Website, zum Beispiel path.php

Fügen Sie diesen Codeausschnitt in die Datei ein und klicken Sie auf die Schaltfläche Speichern

<?php
$path = getcwd();
echo "Your Absolute Path is: ";
echo $path;
?>

Navigieren Sie in Ihrem Browser zu yourdomain.com/path.php

Von nun an:

  1. Loggen Sie sich in Ihr Joomla Administartor Panel ein.
  2. Gehen Sie zur globalen Konfiguration
  3. Klicken Sie nicht auf die Registerkarte "Server"
  4. Ändern Sie den Pfad zu "Absolute Path(you've just found)"/tmp
  5. Fügen Sie diese Codezeile in Ihre .htaccess-Datei ein: php_value open_basedir NULL

    diese Lösung hat für mich sehr gut funktioniert und benötigt kein Joomla-Core-File-Hacking.

Hier ist eine weitere Schritt-für-Schritt-Anleitung für die zweite Lösung:

  1. Loggen Sie sich in das Joomla Administartor Panel ein.
  2. Gehen Sie zur globalen Konfiguration
  3. Klicken Sie auf "Server"
  4. Ändern Sie den Pfad von/public_html/tmp zu "tmp"
  5. Login zum Control Panel (CPanel)
  6. Öffnen Sie den Dateimanager
  7. Ordner "Bibliotheken" öffnen
  8. Öffne den Ordner "joomla"
  9. Ordner "Dateisystem" öffnen
  10. Rechtsklicke auf "folder.php" und klicke auf Bearbeiten.
  11. Suchen Sie nach der Zeile (search = obd): $obd = ini_get('open_basedir'); Kommentieren Sie diese Zeile mit // am Anfang aus, damit sie zu: //$obd = ini_get('open_basedir'); wird.
  12. Speichern und schließen.

Ich habe @ johanpws Lösung und es ist auch sehr gut getestet, aber manchmal kann man die Joomla-Konfiguration nicht über Joomla Backend ändern, so dass man den configuration.php Parameter direkt über Ihr Control Panel oder einen FTP-Account.

6
Hbirjand

Eine andere im Joomla-Forum vorgeschlagene Lösung besteht darin, die FTP-Ebene zu aktivieren.

Die FTP-Ebene kann aktiviert werden von System -> Globale Konfiguration -> Registerkarte Server -> FTP-Einstellungen. Fügen Sie FTP-Details (Host, Benutzername und Passwort) für einen Benutzer mit Zugriff auf Ihren Server hinzu.

Ich kann es nicht selbst testen, da ich den Fehler nicht reproduzieren kann, aber anscheinend kann Joomla durch Aktivieren von FTP bestimmte Server-Einschränkungen überwinden.

2
johanpw