Von: Manfred Ruzicka
Um Joomla mit Safe-Mode zum laufen zu bringen muß man zuerst wissen, wie der Safe-Mode überhaupt funktioniert. Auf den meisten Servern wird PHP nicht als CGI unter dem Useraccount ausgeführt. Meistens wird PHP als Modul unter dem Webserveraccount ausgeführt. Dadurch tritt aber genau das Problem auf, weshalb die meisten Operationen nicht mehr funktionieren. Die von Ihrem Script erstellten Dateien gehören dem Webserver und der Zugriff wird gesperrt.
Wenn man das Problem von der anderen Seite betrachtet, heißt das, daß Joomla dem Webserveraccount gehören müßte, damit alles funktioniert. Auf einem Linux-Server benötigt man aber für einen Besitzerwechsel root-Rechte, die uns der Admin sicher nicht geben wird.
Die Lösung ist einfacher als man glaubt. Wie vorher schon erwähnt gehört jede Datei, die vom Webserver erstellt wird automatisch dem Webserver. Dies können wir für uns nutzen.
Safe-Mode Installer
Systemvoraussetzungen:
- Server mit installierter ZLib
- Joomla ".zip-Archiv"
Anmerkung: Für die korrekte Ausführung des Installer ist es notwendig, daß PHP-Dateien und Ordner im Stammverzeichnis oder in einem Unterverzeichnis erstellt werden können. Dies sollte in den meisten Fällen funktionieren. Ausnahmen gibt es meisten nur, wenn bestimmte Funktionen deaktiviert oder Zugriffsrechte geändert wurden.
Den Installer findet Ihr hier zum Download: Joomla SafeMode-Installer
Joomla deinstallieren
Leider ist das Deinstallieren von Joomla aufgrund der Safe-Mode Einschränkungen ebenfalls nicht so einfach. Der Zugriff über FTP ist leider gesperrt, weil Joomla einem anderem Benutzer gehört. Das einfachste ist es das Script delete_install_dir.php etwas zu verändern.
Dazu gehen wir folgendermaßen vor:
Download der Joomla Safe-Mode Install Scripts
- Upload von create_file.php
- Erstellen der Dateie recrmdir.inc.php
- Achtung! Die Datei delete_install_dir.php nicht einfach kopieren!
- Ändern der Zeile "$res = rec_rmdir ('cms/installation');"
in "$res = rec_rmdir ('cms');"
- Ändern der Zeile "$res = rec_rmdir ('cms/installation');"
- Ausführen der Datei delete_install_dir.php
Danach wurde Joomla von Ihrem Webspace komplett entfernt. Die Datenbank kann mit phpMyAdmin oder dem Tool des Webhosters entfernt werden.
Ergänzungen und Tipps
- Andere CMS-Systeme können ebenfalls mit kleinen Änderungen installiert werden
- Ein Patch oder Update von Joomla ist ebenfalls möglich
- Wenn kein FTP-Zugang bei einer Webseite vorhanden ist, kann Joomla auf diese Weise installiert werden
- Für die Dateiverwaltung innerhalb des Joomla-Systems können Sie den JoomlaXplorer verwenden.
Die Safe-Mode Install-Scripts sind modular aufgebaut. Jede aufgabe wird von einem eigenen Script erledigt. Dadurch sollte es möglich sein, fast alle CMS zu installieren.
Bitte beachten Sie: Die Safe-Mode Install Scripts funktionieren nur mit einem tar.gz Archiv.
Verwendung der Scripts
- Upload der *.php-Dateien über FTP
- Ausführen der Datei create_dir.php Dieses Script legt ein Verzeichnis mit dem Namen "CMS" an
- Ausführen der Datei upload.php Über dieses Script wird das Archiv auf den Server kopiert.
- Ausführen der Datei create_file.php. Erstellen Sie die folgenden Dateien, die Quelltexte finden Sie in den gleichnamigen Textdateien im Archiv:
- delete_install_dir.php --> löscht das Install-Verzeichnis von Joomla
- joomla.php --> extrahiert das tar.gz-Archiv
- PEAR.php --> Klassenbibliothek
- recrmdir.inc.php --> Funktion für das rekursive löschen von Verzeichnissen
- Tar.php --> Klassenbibliothek für tar.gz-Archive
- Ausführen der Datei joomla.php Extrahiert das Archiv in das Verzeichnis "CMS"
- Starten Sie die Joomla-Installation http://www.ihredomain.de/cms
- Nach Abschluß der Joomla-Installation rufen Sie die Datei delete_install_dir.php auf. Das Joomla Install-Verzeichnis wird gelöscht. Löschen Sie die Dateien der Safe-Mode Install Scripts.
Löschen von Joomla
Wenn Sie Joomla aus irgendeinem Grund wieder löschen wollen, gehen Sie folgendermaßen vor:
- Upload der Datei create_file.php
- Erstellen der Datei recrmdir.inc.php
- Erstellen der Datei delete_install_dir.php
ACHTUNG: Ändern Sie in diesem Script folgende Zeile:
$res = rec_rmdir ('cms/installation');
in folgende: $res = rec_rmdir ('cms'); - Die Datenbank können sie mit jedem beliebigen Datenbank-Tool löschen.
Safe-Mode Patch
Eine weitere Möglichkeit das Safe-Mode Problem zu lösen ist der Safe-Mode Patch, den es für Joomla gibt.
Der Joomla SafeMode Patch ermöglicht das Installieren von Modulen, Komponenten usw. auch auf einem Webserver der im "SafeMode On" Modus läuft. Durch das Einspielen des Patches werden die Dateien per FTP auf den Server übertragen.
Bei der Verwendung der Komponenten können aber wieder Probleme mit dem Safe-Mode auftreten, sobald eine Datei hochgeladen oder erstellt / kopiert werden. Diese Dateien sind dann oft gesperrt und können nicht mehr bearbeitet oder gelöscht werden.
Installation:
Zum Installieren des Patches entpacken Sie das Archiv und kopieren alle Dateien in die zugehörigen Ordner der Joomla Installation. Dabei kommt es vor, daß bestehende Dateien überschrieben werden.
| Patchen Sie das Core, bevor Sie Joomla auf dem Server installieren. |
Verwendung:
Der Installer erkennt automatisch, ob der FTP-Modus verwendet werden muß.
Für die Eingabe der FTP-Benutzerdaten stehen Eingabefelder zur verfügung. Das Passwort muß aus Sicherheitsgründen bei jeder Installation oder Deinstallation erneut eingegeben werden.
Wenn Sie immer über FTP Erweiterungen installieren und Deinstallieren möchten, sollten Sie die components, modules, templates, and language Unterverzeichnis-Rechte auf 755 Octal setzen, anstelle der empfohlenen 777.
Der Grund dafür ist die erhöhte Sicherheit. Der neue Installer kann die Rechte der Ordner ändern und wieder auf die originalen Werte zurücksetzen.
Hinweis: Dieser Patch überschreibt die Original-Dateien von Joomla. Bei einem späteren Update auf eine neue Core-Version kann es dadurch zu Problemen kommen. Es wird geraten, vorher ein Backup durchzuführen.



Dienstag 19 Mai, 2009