Installation

02.05 Lokale Serverumgebung einrichten - Teil 1

xampp, mamp, Apache, PHP, MySQL. Wie installiert man das (xampplite) und wie sind die Zusammenhänge.

Buchkapitel zu diesem Video:

2.5 Lokale Serverumgebung einrichten

 

16.4 Installation auf dem Webserver

Herr Bertrand hat die Website nun lokal etwa so, wie er sich das vorstellt. Er hat in den vergangenen Wochen nach einem Provider für seine Website Ausschau gehalten und ist nach langer Suche bei einer kleinen Firma in der Nähe Kunde geworden. Die Firma bietet Herrn Bertrand eine SSL-geschützte Administrationsoberfläche mit dem Namen Plesk für die Einstellungen an seinem Webserver, den Datenbanken, der E Mail-Konfigurationen etc. an (Abbildung 16.53).

Admin-Oberfläche Plesk
Abbildung 16.53: Admin-Oberfläche Plesk

PHP läuft im Safe Mode9. Die Datenbank kann mit einem installierten phpMyAdmin bearbeitet werden. Herr Bertrand wollte gern eine webbasierte Verwaltung für seinen Server, weil er sich nicht mühselig in Konfigurationsdateien einarbeiten wollte.

Exkurs

Außer Plesk gibt es noch zahlreiche andere Oberflächen wie beispielsweise Confixx, Visas und Webmin. Viele Provider wie 1und1, Strato, Hetzner und andere benutzen Eigenentwicklungen. Plesk wird hier exemplarisch kurz angerissen, die Zusammenhänge in anderen Oberflächen sind ähnlich.

16.4.1 Wie installieren?

In der lokalen Umgebung hat Herr Bertrand den Joomla!-Webinstaller genutzt, um das Programm zu installieren. Dann hat er einen Vormittag lang Daten eingegeben und möchte jetzt bei der Installation seine Daten nicht verlieren. Es gibt mindestens zwei Möglichkeiten:

  • Er lädt alle Joomla!-Dateien per FTP auf den Server seines Providers, ändert per Hand die Konfigurationsdatei und importiert die Datenbank über phpMyAdmin.
  • Er lädt eine Joomla!-Datei per FTP auf den Server des Providers, installiert sie mit dem Joomla!-Installer und importiert dann die Daten der Datenbank über phpMyAdmin.

Herr Bertrand entscheidet sich für die erste Variante. Um mit der Installation starten zu können, benötigt er Zugangsdaten für FTP, MySQL und natürlich den Domainnamen.

In seiner Verwaltungsoberfläche findet er die folgenden Zugangsdaten:

FTP
  • Host: bertrand.cocoate.com
  • User: fusfusfus
  • Passwort: pwpwpw
MySQL
  • Host: localhost
  • User: dbusdbus
  • Passwort: pwpwpwp
  • Datenbank: dbdbdb

16.4.2 Installation von Joomla! beim Provider

Herr Bertrand startet sein FTP-Programm und gibt die notwendigen Daten ein. Das FTP-Programm hat er von seinem Provider kostenlos erhalten10.

FTP-Übertragung
Abbildung 16.54: FTP-Übertragung

Er überträgt seine bestehende Installation aus dem Unterverzeichnis c:\xampplite\ htdocs\bertrand per FTP in das Verzeichnis httpdocs auf dem Server seines Providers.

Die Datei configuration.php sichert er sich auf seinem PC und öffnet sie in einem Editor oder dem Programm WordPad.

Hier muss er ein paar Werte ändern, damit seine lokale Version auch auf dem Server läuft.

/* Database Settings */
...
var $host = 'localhost'; // normally set to localhost
var $user = '';         // MySQL username
var $password = '';     // MySQL password
var $db = '';           // MySQL database name

Nach der Änderung lädt er die Datei ebenfalls per FTP in das Verzeichnis httpdocs auf den Server und gibt ihr die Rechte chmod 0777. FTP-Programme können diesen Befehl ausführen und damit einem Verzeichnis und Dateien Zugriffsrechte zuweisen. Für die Verzeichnisse benötigt Joomla! mindestens chmod 755, für die Dateien reicht chmod 644 aus.

Siehe auch den Lesertipp bzgl. der Datei configuration.php von Oliver Gregortschek

16.4.3 Importieren der Daten

Um die Daten in die MySQL-Datenbank des Providers importieren zu können, müssen sie zunächst aus der lokalen XAMPP lite-Version exportiert werden. Herr Bertrand ruft im Browser http://localhost/phpmyadmin auf, wählt die bertrand-Datenbank aus und klickt auf den Reiter Exportieren.

Er klickt auf Alle auswählen, um alle Tabellen für den Export auszuwählen.

  • Im Bereich Struktur wählt er Struktur und Drop Table aus. Drop Table fügt einen zusätzlichen SQL-Befehl in die Export-Datei ein, der dafür sorgt, dass beim späteren Import der Daten eventuell vorhandene Tabellen mit gleichem Namen gelöscht werden. In seinem Fall ist das wichtig, da alle Tabellen durch die Web Installer-Installation vorhanden sind.
  • Im Bereich Daten wählt er Daten und Erweiterte Inserts aus.
  • Bei Kompression wählt Herr Bertrand den Radio-Button Zip-komprimiert, was die Übertragung etwas beschleunigen wird.
  • Er wählt Senden aus, um die Daten als Datei via Download zu erhalten.

Anschließend klickt er auf den Button OK (Abbildung 16.54), und eine Datei bertrand.sql.zip wird ihm zum Download angeboten (Abbildung 16.56).

Exportieren der Daten
Abbildung 16.55: Exportieren der Daten

kap17_0540_dbdatei
Abbildung 16.56: Herunterladen der Datei bertrand.sql.zip

In dieser Datei befinden sich alle Datenbankinhalte. Er speichert die Datei an einem Platz außerhalb des Joomla!-Verzeichnisses und entpackt sie, so dass er die Datei bertrand.sql erhält. In der Datei sind SQL-Befehle enthalten, die genau den Stand der Dinge in der lokalen Installation repräsentieren und die in einem anderem MySQL-System, der Reihe nach abgearbeitet, genau diesen Stand wiederherstellen.

Genau das will Herr Bertrand haben und ruft das phpMyAdmin auf dem Server seines Providers auf. Dort klickt er in seiner Datenbank (die coco_bertrand heißt) auf den Reiter Importieren. In der Maske klickt er auf den Button Durchsuchen und wählt die lokale bertrand.sql-Datei aus. Durch einen Klick auf den Button OK wird die Datei hochgeladen, die SQL-Befehle werden der Reihe nach ausgeführt, und seine Website auf dem Server des Providers ist jetzt eine Kopie seiner lokalen Version (Abbildung 16.57).

Importieren der SQL-Datei
Abbildung 16.57: Importieren der SQL-Datei

Die Website sollte jetzt auf dem Server zur Verfügung stehen. In diesem Fall unter http://bertrand.cocoate.com (Abbildung 16.57).

Website auf http://bertrand.cocoate.com
Abbildung 16.58: Website auf http://bertrand.cocoate.com

16.4.4 Datei- und Verzeichnisrechte

Um einen normalen Betrieb von Joomla! zu ermöglichen, müssen die Rechte der Verzeichnisse angepasst werden. Im Menü Hilfe - Systeminfo kontrolliert Herr Bertrand die Einstellungen (Abbildung 16.59).

Verzeichnisrechte
Abbildung 16.59: Verzeichnisrechte

Auf dem Server von Herrn Bertrands Provider läuft Linux. Unter Linux gibt es Benutzer und Benutzergruppen. Herr Bertrand hat einen Benutzer, und der Apache Webserver hat auch einen Benutzer. Je nach Konfiguration sind beide in einer Benutzergruppe oder in verschiedenen Benutzergruppen. Wenn sie in verschiedenen Benutzergruppen sind, müssen die Verzeichnisrechte auf chmod 0777 gesetzt werden.

In der Administration ändert Herr Bertrand noch das Passwort für die Exposé-Galerie. Es stand immer noch auf manager :-).

16.5 Suchmaschinen

10 Ein kostenloses FTP-Programm finden Sie unter http://www.filezilla.de/ und auf der beiliegenden CD.

 

15.1 Beispiel-Komponente hallowelt

Bevor wir richtig loslegen, aber erst mal ein einfacher »Hallo Welt«-Start. Komponenten teilen sich in Frontend- und Backend-Komponenten. Frontend-Komponenten werden auf Ihrer Website angezeigt, Backend-Komponenten werden für den Administrationsbereich entwickelt, meist um die Frontend-Komponenten zu verwalten. Aus der Sicht eines Besuchers Ihrer Website erkennen Sie eine Komponente an der Art des Aufrufs einer Joomla!-Seite:

Die URL

http://localhost/joomla150/index.php?option=com_contact

ruft beispielsweise die Frontend-Komponente com_contact auf.

Wenn Sie jetzt in Ihr Dateisystem schauen, finden Sie im Unterverzeichnis [PfadzuJoomla]/components eine ganze Menge Komponenten, unter anderem auch die com_contact-Komponente (Abbildung 15.1).

Joomla!-Komponenten
Abbildung 15.1: Joomla!-Komponenten

Innerhalb dieser Verzeichnisse sind je nach Komplexität der Komponenten weitere Verzeichnisse mit Dateien für Model, View und Controller enthalten.

15.1.1 Ein Haus für hallowelt

Jede Komponente »wohnt« in ihrem Verzeichnis. Der Weg, den Joomla! einschlägt, ist folgender:

  • Joomla! wertet die übergebenen Werte in der URL aus: /index.php?option=com_hallo.
  • Es sucht in der Komponenten-Tabelle nach der Komponente com_hallo.
  • Es sucht nach einem Verzeichnis com_hallo.
  • Es sucht in diesem Verzeichnis eine Datei hallo.php.
  • Es interpretiert diese Datei.

Damit richtig interpretiert wird, benötigen Sie mehrere Dateien.

  • hallo.php – der Einstiegspunkt in Ihre Komponenten
  • controller.php – die Steuerung
  • views/hallo/view.html.php – die Präsentation, die die Daten an das Template weitergibt
  • views/hallo/tmpl/default.php – ein Standard-Template, das von »richtigen« Templates überschrieben oder so, wie es ist, genutzt werden kann.
  • hallo.xml – die bekannte XML-Datei, die dem Installer erklärt, was im Paket ist, wo es installiert wird und wer dafür zuständig ist.
  • Auch wenn Sie jetzt innerlich zerbrechen und sich nach Joomla! 1.0 zurücksehnen (da ging das mit einer Datei :-)) – geben Sie der Idee eine Chance!

Installieren Sie sich am besten das Komponentenpaket com_hallo.zip über den Joomla!-Installer und legen Sie sich einen Menüpunkt an. Dann haben Sie gleich alle Dateien im richtigen Ordner und können den Quelltext leicht nachvollziehen.

15.1.2 Der Einstieg (/component/com_hallo/hallo.php)

Diese Datei wird als Erstes aufgerufen, wenn Sie die URL

http://localhost/joomla150/index.php?option=com_hallo&view=hallo

oder den entsprechenden Menüpunkt anklicken. Das Ergebnis ist recht unspektakulär. Sie sehen den Text »Hallo Welt« im Inhaltsfenster.

Der Quellcode der Datei sieht folgendermaßen aus (siehe Listing 15.1):

<?php
// kein direkter Zugriff
defined('_JEXEC') or die('Restricted access');
// Einlesen des basis Controllers
require_once (JPATH_COMPONENT.DS.'controller.php');
// Einen eigenen Controller erzeugen
$classname    = 'HalloController'
$controller = new $classname( );
// Nachsehen, ob Parameter angekommen sind (Requests)
$controller->execute( JRequest::getVar('task'));
// Umleitung innerhalb des Controllers
$controller->redirect();
?>

Listing 15.1: /component/com_hallo/hallo.php

defined('_JEXEC') or die('Restricted access');

Die erste Zeile ist ein Sicherheitscheck, ob die Datei von Joomla! aus aufgerufen wird oder direkt. Direkt aufgerufene Skripte werden sofort durch die Funktion die() beendet.

require_once (JPATH_COMPONENT.DS.'controller.php');

Danach wird der erste Controller eingelesen. JPATH_COMPONENT ist der absolute Pfad zur aktuellen Komponente (components/com_hallo). DS ist der directory separator des Betriebssystems. Windows hätte es gern andersherum als Unix-artige Systeme, also entweder / oder \. Dieser Wert wird von Joomla! automatisch gesetzt.

$classname    = 'HalloController';
$controller = new $classname( );

Jetzt können wir den eingelesenen Controller instanzieren und damit einen für uns »brauchbaren« Controller erzeugen. Wenn Sie »nur« einen Controller benötigen, wie es im Frontend oft der Fall ist, können Sie auch folgende Anweisung benutzen:

$controller = new HalloController();
$controller->execute( JRequest::getVar('task'));

Anweisungen an die Komponente werden in der Form index.php?option=com_ hallo&task=Aufgabe (save, edit, new, ...) über die URL angegeben. Mit dieser Zeile wird nachgeschaut, ob es da etwas zu lesen gibt.

$controller->redirect();

Unter Umständen leitet der Controller die Anfrage an eine andere Seite weiter, beispielsweise wenn etwas gespeichert wird, daher diese Zeile.

15.1.3 Der Controller (/component/com_hallo/controller.php)

Da die Komponente nun wirklich einfach ist, hat der Controller nur die Aufgabe, etwas anzuzeigen. Wir benötigen kein Datenmodell und nur eine display-Methode (Listing 15.2).

<?php
jimport('joomla.application.component.controller');
class HalloController extends JController{
  function display(){
    parent::display();
  }
}
?>

Listing 15.2: /component/com_hallo/controller.php

Der Aufruf der display-Methode bestimmt den Namen und das Layout des Views. Wenn Sie beispielsweise einen neuen Menülink anlegen, sehen Sie das Ergebnis dieser Display-Variante. Unsere Komponente kennt nur das Standardlayout.

Menülink für die »Hallo Welt«-Komponente
Abbildung 15.2: Menülink für die »Hallo Welt«-Komponente

15.1.4 Der View (/component/com_hallo/views/hallo/
views.html.php)

Und hier ist er schon, der Standard-View (Listing 15.3).

<?php
jimport( 'joomla.application.component.view');
class HalloViewHallo extends JView{
  function display($tpl = null){        
    $greeting = "Hallo Welt!";
    $this->assignRef( 'greeting', $greeting );
    parent::display($tpl);
  }
}
?>

Listing 15.3: /component/com_hallo/views/hallo/views.html.php

Der View, die Präsentation, erhält normalerweise Daten (aus dem Modell), bereitet sie auf und schickt sie an das Template.

$greeting = "Hallo Welt!";
$this->assignRef( 'greeting', $greeting );
parent::display($tpl);

Das Modell ist hier durch die Variablenzuweisung überflüssig. In der Variable $greeting könnte aber auch das Ergebnis einer Datenbankabfrage stehen. Mit der assignRef-Methode wird die Variable an das Template weitergeben.

parent::display($tpl);

ruft das Template auf.

15.1.5 Das Template (/component/com_hallo/views/hallo/tmpl/
default.php)

Und hier ist nun das Standard-Template. Es heißt immer default.php und sieht in seiner einfachsten Form aus wie in Listing 15.4.

defined('_JEXEC')or die('Restricted access'); ?>

<h1>
<?php echo $this->greeting; ?>
</h1>

Listing 15.4: /component/com_hallo/views/hallo/tmpl/default.php

15.1.6 Das Ergebnis

Auf der Website sieht alles zusammen sehr unspektakulär aus (Abbildung 15.3):

Hallo Welt
Abbildung 15.3: Hallo Welt

15.1.7 Die Installation

Alle Dateien müssen nun in ein zip-Paket gepackt werden und sind dann über den Joomla!-Installer installierbar. Die Frontend-Dateien in /component/com_hallo kommen in ein Verzeichnis site. Die Administrationsbereich-Dateien aus /com_hallo/ administrator/components kommen in ein Verzeichnis admin. Alle Dateien werden mit zusätzlichen Informationen in einer XML-Datei beschrieben, die so heißen muss wie die Komponente, also hallo.xml (Listing 15.5).

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/component-install.dtd">
<install type="component" version="1.5.0">
<name>Hallo</name>
<creationDate>November</creationDate>
<author>Niemand</author>
<authorEmail>niemand@example.org</authorEmail>
<authorUrl>http://www.example.org</authorUrl>
<copyright>Copyright Info</copyright>
<license>License Info</license>
<version>Component Version String</version>
<description>Beschreibung der Komponente ...</description>
<!-- Site Main File Copy Section -->
<files folder="site">
<filename>index.html</filename>
<filename>hallo.php</filename>
<filename>controller.php</filename>
<filename>views/index.html</filename>
<filename>views/hallo/index.html</filename>
<filename>views/hallo/view.html.php</filename>
<filename>views/hallo/tmpl/index.html</filename>
<filename>views/hallo/tmpl/default.php</filename>
</files>
<administration>
<!-- Administration Menu Section -->
<menu>Hallo Welt!</menu>
<!-- Administration Main File Copy Section -->
<files folder="admin">
<!-- Site Main File Copy Section -->
  <filename>index.html</filename>
  <filename>admin.hallo.php</filename>
</files>        
</administration>
</install>

Listing 15.5: hallo.xml

Um alles in ein zip-Paket zu packen, müssen Sie auf die Struktur achten. Hier eine entsprechende Struktur für die com_hallo-Komponente (Abbildung 15.4):

Installationspaket packen
Abbildung 15.4: Installationspaket packen

Sie können dieses Paket jetzt ganz normal über den Joomla!-Installer hochladen und installieren lassen.

15.1.8 Fazit

Das, was Sie jetzt erstellt haben, ist tatsächlich gut pflegbar, erweiterbar und – wenn Sie mal ehrlich sind – eigentlich auch ganz übersichtlich. Auf den ersten Blick wirken die vielen Dateien etwas wirr, auf den zweiten Blick verlieren sie aber schnell ihren Schrecken. Das liegt daran, dass sich in jeder Datei relativ wenig Quellcode befindet und Sie somit eine bessere Übersicht haben. Genau dieser Effekt ist beim MVC-Muster erwünscht. Und wenn Sie einen besonders komplexen Template-Wunsch haben, dann überschreiben Sie in Ihrem selbstgebauten Template einfach den View (siehe Kapitel 13.3.8).

10.1 Installieren-Deinstallieren

Grundsätzlich kann jeder eine Erweiterung für Joomla! schreiben, nach gewissen Regeln verpacken und per Joomla!-Installation in die Website integrieren. In diesem Bereich finden Sie eine Übersicht über die installierten Erweiterungen. Die Maske, die nach einem Aufruf des Menüpunkts Erweiterungen - Installieren/Deinstallieren erscheint, bietet drei Möglichkeiten, Erweiterungen zu installieren (Abbildung 10.2)1.

Erweiterungen - Installieren/Deinstallieren
Abbildung 10.2: Erweiterungen - Installieren/Deinstallieren

  • Hochladen einer Paketdatei
  • Installation aus einem Verzeichnis
  • Installation durch Eingabe einer URL

Die Reiter Komponenten, Module, Plugins und Sprachen enthalten jeweils Auflistungen der installierten Erweiterungen. Wir werden auf die Installation von zusätzlichen Komponenten im Kapitel 12 eingehen.

10.1.1 Installierte Komponenten, Module, Plugins, Sprachen und Templates

In den jeweiligen Reitern, beispielsweise unter Komponenten, sehen Sie eine Liste der standardmäßig installierten Komponenten. Sie sehen Informationen über die Version der Komponenten, das Datum der Erstellung und den Autor. Falls Sie eine Komponente deinstallieren wollen, wählen Sie sie aus und klicken in der Werkzeugleiste auf das Icon Deinstallieren.

Achtung

Die Komponente ist nach der Deinstallation wirklich verschwunden – manchmal mit allen gespeicherten Daten! Es gibt keinen Komponenten-Papierkorb!

Diese Verhaltensweise ist durchaus so gewollt. Es obliegt dem Komponentenentwickler, für welche Strategie er sich entscheidet. Manchmal ist es sinnvoll die Tabellen nicht zu löschen, beispielsweise bei einem Update. Manchmal allerdings ist es wichtig, wirklich alle Tabellen, die erzeugt worden sind, rückstandslos zu löschen. Im Kapitel 15 erfahren Sie mehr über diese Techniken. Lesen Sie unbedingt die Dokumentation der entsprechenden Komponente, um mit ihrem Verhalten vertraut zu sein.

  • 1Siehe auch Kapitel 12.

2 Installation

Die Installation von Joomla! selbst ist eine Sache von fünf Minuten. Wenn Sie es mehrmals
installiert haben, schaffen Sie es auch in drei. In Kapitel 16 haben Sie Gelegenheit,
die Aussage selbst zu überprüfen. Damit die Installation überhaupt möglich ist,
benötigen Sie als lokale Umgebung ihr »eigenes Internet«, bestehend aus einem Webserver,
der PHP unterstützt, und ein von Joomla! unterstütztes Datenbanksystem.

Joomla!-Dateien werden in dieses System kopiert und mit einem Webinstaller eingerichtet.
Man spricht in einer solchen Umgebung auch von einem Client-Server-System.

2.7 Joomla!-Installation

Um Joomla! installieren zu können, benötigen Sie zunächst den Quellcode. Laden Sie das Paket Joomla_1.5.7-Stable-Full_Package (hängt unten an dem Kapitel als Anhang) und speichern es auf Ihrem System12.

In welches Verzeichnis installieren?

Sie müssen sich überlegen, ob Sie Ihr Joomla! direkt in das Dokumentenverzeichnis installieren wollen oder in ein Unterverzeichnis. Das ist wichtig, weil Sie vermutlich eine möglichst kurze URL zu Ihrer Homepage möchten.

Beispiel

Wenn Sie Joomla! direkt in das Dokumentenverzeichnis Ihres Webservers (/htdocs) auspacken, so startet Ihre Webseite, wenn Sie auf Ihrem lokalen PC http://localhost/ bzw. auf Ihrem Server im Internet Ihren Domainnamen http://www.meinehomepage.de/ aufrufen. Erstellen Sie unterhalb von /htdocs/ noch ein weiteres Verzeichnis, beispielsweise /htdocs/joomla150/ und entpacken das Paket dort, so müssen Sie im Browser http://localhost/joomla150/ eingeben. Lokal ist das kein Problem, auf einer produktiven Seite im Internet sieht das nicht so gut aus.

In Ihrer lokalen XAMPP lite-Umgebung unter Windows liegen bereits einige HTML-Dateien und Unterverzeichnisse in /htdocs, die beispielsweise die Begrüßungsseite von XAMPP lite anzeigen (Abbildung 2.1.6). In Ihrer lokalen Linux-Umgebung wird Ihnen ebenfalls eine Startseite, abhängig von der Distribution und den Webservereinstellungen, angezeigt.

Verzeichnis

Ich schlage daher vor, Sie erstellen sich ein Unterverzeichnis mit dem Namenjoomla150 unterhalb Ihres Dokumentenverzeichnisses. In Windows nehmen Sie dazu den Windows Explorer, in Linux entweder die Shell, den KDE Konqueror oder den Midnight Commander.

[home]/htdocs/joomla150/

Im Windows Explorer sollte Ihr Verzeichnisbaum nun folgendermaßen aussehen (Abbildung 2.1.9):

Joomla! Dateiverzeichnis
Abbildung 2.1.9: Joomla!-Dateiverzeichnis

Wenn Sie in Ihrem Browser http://localhost/joomla150/ eingeben, erscheint in der XAMPP lite-Variante eine Seite mit einem leeren Inhaltsverzeichnis (Abbildung 2.1.10).

Apache Verzeichnisanzeige
Abbildung 2.1.10: Apache-Verzeichnisanzeige

Unter Linux oder bei einer anderen Konfiguration kann es sein, dass Sie eine Meldung erhalten, der zufolge Sie keinen Zugriff auf dieses Verzeichnis haben. Das hängt mit der Konfiguration des Webservers zusammen. Aus Sicherheitsgründen ist die automatische Verzeichnisanzeige in der Apache-Konfiguration oft deaktiviert. Ein potenzieller Angreifer könnte aus diesen Informationen viele interessante Schlüsse über die Verzeichnisstruktur und die Dateien auf Ihrer Homepage ziehen und sie dann gezielt angreifen.

Auf virtuellen Webservern bei Providern dürfen Sie auf die Konfigurationsdatei des Apache Webservers aus Sicherheitsgründen meistens nicht zugreifen. Falls doch, sollten Sie aus oben genannten Gründen die Inhaltverzeichnisse deaktiviert lassen bzw. nur für bestimmte Verzeichnisse einschalten, in denen Sie Dateien zum Download anbieten.

Entpacken

Jetzt können Sie endlich das Dateipaket Joomla_1.5.7-Stable-Full_Package.zip (hängt unten an dem Kapitel als Anhang) in das vorbereitete Verzeichnis auspacken (Abbildung 2.1.11). Unter Windows XP und Windows Vista können Sie dieses Paket direkt mit dem Datei-Explorer auspacken. Unter allen anderen Windows-Versionen benötigen Sie ein separates Packprogramm wie beispielsweise das freie Programm TUGZip13.

Joomla!-Quellcode-Dateien
Abbildung 2.1.11: Joomla!-Quellcode-Dateien

Diese Struktur ist auf allen Betriebssystemen die gleiche. Unterschiede bestehen nur in der Darstellung. In Abbildung 2.1.12 sehen Sie beispielsweise eine Darstellung im FTP-Client FileZilla14 unter Windows Vista. Im linken Fenster sehen Sie Ihren lokalen PC, im rechten Fenster das Dokumentenverzeichnis Ihres entfernten Webservers.

Joomla!-Dateien im FTP-Client FileZilla
Abbildung 2.1.12: Joomla!-Dateien im FTP-Client FileZilla

Joomla!-Webinstaller

Ab jetzt geht alles blitzschnell, weil der Joomla!-Webinstaller das Kommando übernimmt. Rufen Sie die URL http://localhost/joomla150/ auf.

Schritt 1 – Sprachauswahl

Der Webinstaller meldet sich in deutscher Sprache mit der Sprachauswahl. Die Sprachauswahl ist der erste von insgesamt sieben Installationsschritten. Legen Sie hier die gewünschte Sprache fest und klicken den Button Weiter (Abbildung 2.1.13).

Installer – Sprachauswahl
Abbildung 2.1.13: Installer – Sprachauswahl

Schritt 2 – Installationsprüfung

Sie sehen die Installationsprüfung (Abbildung 2.1.14). Diese Prüfung soll Ihnen helfen zu beurteilen, ob sich Ihre Serverumgebung für die Installation von Joomla! eignet.

Installer – Installationsprüfung
Abbildung 2.1.14: Installer – Installationsprüfung

Wenn Sie überwiegend grüne Testergebnisse sehen, so ist das schon mal ein gutes Zeichen. Abhängig von Ihrer Konfiguration kann es hier Unterschiede geben. Der Joomla!-Installer berücksichtigt die Konfigurationseinstellungen von Webserver (in unserem Fall Apache), PHP und dem Betriebssystem. Auf Unix-artigen Systemen (Linux, Mac OS X) müssen Sie auf Schreibberechtigungen achten. Dies gilt insbesondere für die Datei configuration.php. Sie wird am Ende der Installation mit Ihren individuellen Werten erzeugt. Hat der Installer keine Schreibrechte im Ordner, kann Joomla! die Datei nicht erstellen, und die Installation schlägt fehl. Versuchen Sie, in diesem Fall die Rechte entsprechend zu konfigurieren und klicken Sie auf den Button Prüfung wiederholen.

Exkurs

Bei Mehrbenutzerbetriebssystemen (Windows, Linux, Mac OSX) werden die Dateirechte für Dateien und Ordner meist mit den Worten Lesen, Schreiben, Lesen/Ausführen, Ändern und Vollzugriff umschrieben. Jedes Betriebsystem verwaltet die Rechte auf eine leicht unterschiedliche Weise.

Unterscheiden kann man bei Windows die Art der Verwaltung vor Windows NT (Windows 98, Windows ME) und nach Windows NT (Window XP, Windows Vista). Nach Windows NT wurden für Dateien, Ordner und Prozesse Access Control Lists (ACLs), Zugangskontrolllisten, eingeführt. Wenn diese ACLs nicht gesetzt sind, erhält jeder Benutzer Vollzugriff auf jedes Objekt. Daher ist auf diesen Betriebssystemen das Arbeiten mit XAMPP lite und Joomla! so »einfach«. In Windows Vista wurde unter anderem die Sicherheit bei der Ausführung
von Prozessen erhöht, daher müssen Sie beispielsweise den Betrieb eines Webservers und eines Datenbankservers erst explizit erlauben.

Bei Unix-artigen Systemen (Linux, Max OS X) werden die Zugriffsrechte über drei Benutzergruppen (Inhaber, Gruppe und Sonstige) und die Rechte (Lesen, Schreiben und Ausführen) eingeteilt. Die Benutzerzuordnungen werden über den Befehl chown geregelt, die Dateirechte über den Befehl chmod. Beide Befehle finden Sie in Ihrem FTP-Programm (meist über einen Rechtsklick auf den Namen der Datei, deren
Rechte Sie ändern möchten). Eine ausführliche Erklärung sowie eine Übersicht über die Zusammensetzung der Rechte finden Sie beispielsweise unter http://de.wikipedia.org/wiki/Unix-Dateirechte.

Bei virtuellen Servern bei einem Provider kann es, je nach Konfiguration des Servers, manchmal vorkommen, dass der Webserver mit anderen Rechten und Gruppenzuordnungen als der FTP-Benutzer läuft. Wenn Sie nun eine Datei über Joomla! hochladen, wird diese mit den Rechten des Webservers (z.B. mit dem User wwwrun) gespeichert. Wenn Sie mit Ihrem FTP-Benutzer (z.B. bertrand) diese Datei dann löschen wollen, kann es u.U. passieren, dass Sie das nicht dürfen, weil Ihr FTP-Benutzer sich in einer anderen Benutzergruppe als der Webserver befindet.

Wenn Sie mit der XAMPP lite-Lösung unter Windows arbeiten, sollte es bei Ihnen so aussehen wie bei mir. Klicken Sie auf den Button Weiter, und Sie befinden sich im Schritt Lizenz.

Schritt 3 – Lizenz

Jede Software wird unter bestimmten Bedingungen lizenziert. Bei Joomla! handelt es sich um dieGNU/GPL Lizenz in der Version 2.0 (Abbildung 2.1.15).

Exkurs

Eine deutsche Übersetzung dieser Lizenz finden Sie unter http://www.gnu.de/documents/gpl-2.0.de.html.

Machen Sie sich ruhig die Mühe und schauen sich die deutsche Übersetzung dieser Lizenz an. Es ist momentan wohl einer der berühmtesten Texte in der Welt der Software.

Installer – Lizenz
Abbildung 2.1.15: Installer – Lizenz

Schritt 4 – Datenbank

Im vierten Schritt Datenbankkonfiguration werden Ihre Datenbank-Parameter abgefragt (Abbildung 2.1.16). In der XAMPP lite-Serverumgebung können Sie beliebig viele Datenbanken anlegen und haben einen MySQL-Benutzer mit dem Namen root ohne Passwort. Der Benutzer root ist der MySQL-Administrator und darf alles in einem MySQL-System. Ohne Passwort ist so eine Installation ein erhebliches Sicherheitsrisiko. Lokal ist es m.E. am Anfang in Ordnung, um das System schnell zum Laufen zu bringen. Sie sollten langfristig Ihre XAMPP lite-Installation im Sicherheitscheck mit Passworten versehen15.

Installer – Datenbankkonfiguration
Abbildung 2.1.16: Installer – Datenbankkonfiguration

Tragen Sie bei einer lokalen XAMPP lite-Installation folgende Werte ein:

  • Computer Name: localhost

  • Benuztername: root

  • Passwort: [leer lassen – Achtung Sicherheitsrisiko!]

Wählen Sie jetzt noch den Datenbanknamen aus. In der lokalen XAMPP lite-Umgebung lassen sich beliebig viele Datenbanken anlegen, weil der Benutzer root das Recht dazu hat. In einer produktiven Umgebung auf einem Datenbankserver bei einem Provider haben Sie vermutlich ein festes Kontingent von Datenbanken, und die Datenbankzugangsdaten sind in der Regel vorgegeben.

Aus diesem Grund kann ich im Installer den Namen einer Datenbank angeben, die noch nicht existiert (joomla150).

Durch einen Klick auf das grüne Dreieck vor Erweiterte Einstellungen können Sie weitere Optionen einblenden.

Sie können wählen, ob die Tabellen einer evtl. bereits bestehenden Joomla!-Installation in dieser Datenbank gelöscht oder gesichert und mit dem Präfix bak_ versehen werden sollen.

Das MySQL-Tabellenpräfix ist eine praktische Sache. Vor jeden Tabellenamen, den der Webinstaller erzeugt, schreibt er den Text, den Sie in das entsprechende Feld eingeben. Standardmäßig schlägt der Webinstaller jos_ vor.

Das hat einen einfachen Grund. Manchmal erhalten Sie bei einem Internetprovider nur eine MySQL-Datenbank. Wenn Sie nun zwei Joomla!-Seiten betreiben wollen, hätten Sie ein Problem, da Sie ja die Tabellen nicht voneinander unterscheiden können. Durch das Tabellenpräfix ist es möglich, die Tabellen verschiedener Joomla!-Installationen auseinanderzuhalten (jos_mueller_ oder jos_schulze_). Hier sollten Sie den Standard jos_ übernehmen. Das Präfix wird außerdem genutzt, um gesicherte Daten zu kennzeichnen (bak_).

Schritt 5 – FTP-Konfiguration

Um Probleme mit Zugriffsrechten und einem evtl. eingeschalteten PHP Safe Mode gleich im Keim zu ersticken, gibt es seit Joomla! 1.5 die Möglichkeit, die FTP-Funktionen von PHP für den Upload und das Handling von Dateien zu benutzen. In der lokalen Installation mit XAMPP lite ist das nicht notwendig. Wenn Sie Joomla! auf einem virtuellen Webserver eines Providers installieren, geben Sie hier die FTP-Daten ein, die Ihnen Ihr Provider zur Verfügung gestellt hat. Wenn Ihr Provider diese Funktion erlaubt, so ist es aus Sicherheitsgründen ist ratsam, unterschiedliche FTP-Konten für sich als Benutzer und Joomla! anzulegen und das Joomla!-FTP-Konto nur für das entsprechende Joomla!-Verzeichnis freizuschalten (Abbildung 2.1.17).

Installer – FTP konfigurieren
Abbildung 2.1.17: Installer – FTP-Konfiguration

Schritt 6 – Konfiguration

Dieser Hauptkonfigurationsschritt ist dreigeteilt.

Im ersten Teil der Konfiguration wird der Name Ihrer Website abgefragt. Dieser Name taucht beispielweise in der Titelzeile des Browserfensters auf, wenn jemand Ihre Website aufruft. Der Name wird auch an verschiedenen anderen Stellen benutzt, beispielsweise bei Bestätigungsmails an registrierte Benutzer. Ich nehme für unsere Beispielseite den Namen Joomla! 1.5.0 (Abbildung 2.1.18).

Im zweiten Teil werden die Pfade der Website, die Administrator-E-Mail und das Administrator-Passwort abgefragt. Notieren Sie sich das Passwort am besten auf einen Zettel (aber kleben Sie ihn nicht an den Bildschirm oder unter die Tastatur :-)).

Installer – Konfiguration – E-Mail, Passwort
Abbildung 2.1.18: Installer – Konfiguration – E-Mail, Passwort

Im dritten Teil legen Sie die Art der Daten fest, die Ihre Joomla!-Installation enthalten soll (Abbildung 2.1.19).

Installation der Beispieldaten

Das Wichtigste sind die Daten Ihrer Installation. Joomla! ermöglicht und empfiehlt es auch ausdrücklich, dass Anfänger die Beispieldaten installieren. Sie erhalten damit ein Gefühl für das Programm und können gefahrlos experimentieren.

Lade lokales SQL-Script

Oft hat man bereits lokal eine Joomla!-Website erstellt und möchte nun genau diese Daten in seiner Online-Datenbank haben. In diesem Fall können Sie hier die aus der lokalen Version exportierte .sql-Datei angeben, die Ihre Joomla!-Daten enthält. Achten Sie darauf, dass diese Datei genau das Joomla! 1.5-Datenbankschema enthält und UTF8-kodiert ist. Mehr zu diesem Thema finden Sie im Anhang.

Lade Migrationsskript

Diese Option macht aus einer älteren Joomla! 1.0.x-Installation eine Joomla! 1.5-Version. Näheres zum Umstieg erfahren Sie im Anhang.

Die Installation von Beispieldaten ist als Standard ausgewählt. Wir werden im weiteren Verlauf des Buches diese Variante betrachten.

Installer – Konfiguration - Daten
Abbildung 2.1.19: Installer – Konfiguration – Daten

Klicken Sie auf den Button Beispieldaten installieren. Der Installer lädt die Daten in Ihre Datenbank und ändert die Anzeige (Abbildung 2.1.20). Der Vorgang ist ein wenig unscheinbar, aber zur Installation der Beispieldaten notwendig. Der Button verschwindet, und ein kleines Textfenster erscheint.

Installer – Beispieldaten
Abbildung 2.1.20: Installer – Konfiguration – Beispieldaten

Klicken Sie jetzt auf den Button Weiter, und die Daten werden übernommen.

Schritt 7 – Abschluss

Der siebte und letzte Schritt gratuliert zur erfolgreichen Installation (Abbildung 2.1.21). Ich gratuliere auch. In fetter Schrift steht dort, dass Sie bitte das Verzeichnis mit dem Namen Installation löschen sollen. Diesen Hinweis sollten Sie jetzt beherzigen, denn Ihre Joomla!-Website läuft ohne diese Maßnahme nicht.

Hinweis

Für Leser, die gern an einem konkreten Beispiel den Bau einer Website von Anfang an begleiten wollen, gibt es das Kapitel 16.

 

Hinweis

In Ihrem Dokumentenverzeichnis ist eine Datei mit dem Namen configuration.php erstellt worden. Falls Sie die Installation wiederholen möchten, müssen Sie, bevor Sie das Installationsverzeichnis löschen, die Datei configuration.php löschen. Der Joomla!- Installer startet dann erneut, wenn Sie im Browser die URL aufrufen, unter der sich die Joomla!-Dateien befinden.

Installer – Abschluß
Abbildung 2.1.21: Installer – Abschluss

Ihr Administrations-Benutzername ist immer admin.

Hinweis

Für den Fall, dass Sie das Administratorpasswort vergessen/verlegt haben sollten, finden Sie im Anhang eine Lösung.

Sie haben jetzt Joomla! vollständig installiert und können damit beginnen, Ihre Website zu konfigurieren und Inhalte einzupflegen. Sie haben die Wahl zwischen den Buttons Site (Website ansehen) und Admin (Administrationsoberfläche).

Sehen Sie ruhig mal Ihre frisch erstellte Website an und klicken Sie auf Site. Sollten Sie noch nicht das Verzeichnis Installation gelöscht haben, erhalten Sie jetzt noch einmal einen freundlichen Hinweis, es zu löschen und anschließend die Seite zu aktualisieren.

Das Ergebnis sieht schon sehr eindrucksvoll aus (Abbildung 2.1.22).

Ihre Website direkt nach der Installation
Abbildung 2.1.22: Ihre Website direkt nach der Installation

Schauen Sie sich in Ruhe um, klicken Sie ein paar Möglichkeiten durch und versuchen Sie sich zu orientieren. In dieser mit Beispieldaten gefüllten Website werden viele Funktionalitäten von Joomla! genutzt, und wir werden uns diese in Ruhe ansehen.

12 Downloadmöglichkeit siehe Anhang.

15 http://localhost/security/

2.5 Lokale Serverumgebung einrichten

Video zu diesem Buchkapitel:

2.5 Lokale Serverumgebung einrichten

 

Um Joomla! lokal auf Ihrem PC installieren zu können, müssen Sie eine Serverumgebung, wie oben beschrieben, bereitstellen.

Windows

Windows ist sehr benutzerfreundlich und weit verbreitet. Über 90% aller PC arbeiten mit Windows als Betriebssystem. Windows XP und Windows Vista sind die vorherrschenden Varianten. Leider sind weder der Webserver Apache5 noch die Datenbank MySQL6, geschweige denn PHP7 im Lieferumfang enthalten.

Sie können jedes dieser Programme einzeln installieren, Sie können allerdings auch auf ein vorkonfiguriertes Paket zurückgreifen. Das schont die Nerven und ist sehr praktisch.

In Windows XP und Windows Vista sollten Sie sich auf Ihrem System im Administratormodus anmelden. Falls Sie nicht wissen, ob Sie Administratorrechte haben, sehen Sie in Start - Systemsteuerung - Benutzerkonten nach und ändern Sie die Rechte gegebenenfalls (Abbildung 2.1.1). In Windows Vista finden Sie die Einstellung unter Start - Systemsteuerung - Benutzerkonten und Jugendschutz.

Benutzerkonto in Windows XP
Abbildung 2.1.1: Benutzerkonten in WinXP

XAMPP für Windows

XAMPP ist ein Projekt von Kai Seidler und Kay Vogelgesang. Die beiden »backen« seit mehreren Jahren eine komplette Serverumgebung mit den Zutaten Apache, MySQL, PHP, Perl und diversen sinnvollen Erweiterungen und stellen sie auf ihrer Website7 als ZIP-Archiv für gängige Betriebssysteme zur Verfügung. Das ist von immensem Vorteil für Menschen wie Sie und mich, da wir ja in erster Linie an Joomla! interessiert sind und nicht so sehr daran, wie das Drumherum funktioniert. Außerdem kann man die ganze Installation mit einem Mausklick wieder rückstandsfrei vom Windows-PC entfernen. Zur Deinstallation löschen Sie genau einen Ordner.

Aber bevor Sie es löschen, müssen Sie es zunächst installieren:

Laden Sie sich die Datei xampplite-win32-1.6.4.exe von der Buch-CD oder der Website8.

02_0060
Abbildung 2.1.2: Extrahieren auf D:

Durch einen Doppelklick auf die Datei packt sich das Archiv aus (Abbildung 2.1.2). Sie können direkt auf ein Laufwerk Ihrer Wahl auspacken. Es entsteht ein Verzeichnis xampplite (Abbildung 2.1.3).

Windows Explorer in Windows Vista Home Premium
Abbildung 2.1.3: Windows Explorer in Windows Vista Home Premium

Doppelklicken Sie auf die Datei xampp-control.exe im xampplite-Verzeichnis und starten Sie Apache und MySQL. PHP wird dabei als Apache-Modul mitgestartet (Abbildung 2.1.4). XAMPP nimmt keine Einträge in die Windows-Registry vor und setzt auch keine Systemvariablen.

xampp-control.exe ausführen
Abbildung 2.1.4: xampp-control.exe ausführen

Es kann sein, dass die Windows Firewall anspringt und entrüstet feststellt, dass Sie zwei Server gestartet haben, und fragt, ob Sie das wirklich wollen. Klicken Sie auf Nicht mehr blocken (Abbildung 2.1.5). Danach müssen Sie unter Windows Vista noch einmal explizit auf Fortfahren klicken.

Warnhinweise der Firewall unter Windows Vista
Abbildung 2.1.5: Warnhinweise der Firewall unter Windows Vista

Öffnen Sie Ihren Internetbrowser und geben Sie http://127.0.0.1/ oder http://localhost/ ein. Danach sollten Sie die XAMPP-Startseite sehen. Klicken Sie auf den Link deutsch, und es zeigt sich folgende Seite (Abbildung 2.1.6):

Startseite XAMPP
Abbildung 2.1.6: Startseite XAMPP für Windows

Das Dokumentenverzeichnis für Ihre Website ist

[Laufwerk]:\xampplite\htdocs

In diesem Verzeichnis liegen alle von einem anderen Rechner im Internet zugänglichen Dateien. Lesen Sie die beigelegte readme_de.txt-Datei von XAMPP lite zu Ihrer Sicherheit aufmerksam durch. Dort finden Sie auch weitere Informationen zu den evtl. benötigten benötigten Passwörtern.

Wenn Sie das Paket deinstallieren wollen, stoppen Sie alle laufenden Server und löschen Sie einfach das xampplite-Verzeichnis.

Exkurs

Falls der Webserver Apache beim Start von XAMPP lite nicht startet, kann es sein, dass bereits ein anderer Dienst den Port 80 auf Ihrem Rechner belegt. Ein verbreitetes Programm ist beispielsweise Skype. Es belegt in älteren Versionen standardmäßig Port 80 und verhindert damit einen Start eines anderen Dienstes. Sie können in den Optionen von Skype die Portnummer ändern oder zuerst XAMPP lite und dann Skype starten.

Linux

Bei Linux liegen die Dinge meist einfacher. Es gibt verschiedene Distributionen mit verschiedenen Standardkonfigurationen. Meist ist unser Dreamteam vorinstalliert und muss nur gestartet werden. Es besteht auch die Möglichkeit, eine XAMPP-Version für Linux zu installieren. Meines Erachtens ist es hier allerdings sinnvoller, auf die Originalprogramme zurückzugreifen. Die Installation erfolgt mittels Paketmanager und ist sehr einfach.

OpenSUSE > 10.x

Mithilfe des Konfigurationsprogramms YaST2 können Sie überprüfen, ob Apache, MySQL und PHP bereits installiert sind. Sollte das nicht der Fall sein, wählen Sie die entsprechenden Pakete zur Installation aus und lassen Sie sie durch YaST2 installieren.

Im Einzelnen handelt es sich um die Pakete:

  • apache2, apache2-devel, apache2-mod_php5

  • mysql, php5-mysql

Sie finden diese Pakete über die Oberfläche von YaST (Abbildung 2.1.7) auf den Datenträgern Ihrer SUSE-Distribution oder auf speziellen Paketseiten im Internet9.

YaST, von einem Windows-PC aus in einer Shell aufgerufen
Abbildung 2.1.7: YaST, von einem Windows-PC aus in einer Shell aufgerufen

Starten Sie den Webserver Apache durch den Befehl:

/etc/init.d/apache2 start

Starten Sie den Datenbankserver MySQL dann über:

/etc/init.d/mysql start

Stoppen können Sie beide mit dem Parameter stop. Eine Übersicht über alle Parameter erhalten Sie mit help.

Debian/Ubuntu

Bei Debian und auch Ubuntu heißt das Mittel der Wahl apt. Mithilfe des Programms apt können Sie Apache, MySQL und PHP installieren.

apt-get install [paketname]

Im Einzelnen handelt es sich um die Pakete:

  • apache-common – Support files for all Apache webservers

  • php5 – A server-side, HTML-embedded scripting language

  • mysql-common – mysql database common files (/etc/mysql/my.cnf)

  • mysql-server – mysql database server binaries

Sie finden diese Pakete automatisch über apt im Internet oder auf der Debian-CD/DVD.

Starten Sie Apache dann durch den Befehl /etc/init.d/apache2 start und MySQL über /etc/init.d/mysql start.

Eigener Server bei einem Provider (Root Server)

Wenn Sie einen kompletten Server bei einem Provider gemietet haben, so haben Sie meist einen Shell-Zugang und die freie Wahl der Linux-Distribution, die Sie benutzen wollen. Außerdem ist das System vorkonfiguriert und enthält bereits alle notwendigen Dateipakete und Konfigurationen. Für die Konfiguration dieser Server werden meist spezielle Administrationsoberflächen wie Confixx10 oder Plesk11 benutzt. Mit diesen Tools können Sie Ihren Server und die Dienste Apache und MySQL bequem über eine Browseroberfläche starten, stoppen und konfigurieren.

 

2.3 Notwendige Elemente für die Installation eines Joomla! Systems

Um selbst ein Joomla!-System installieren zu können, benötigen Sie alle oben genannten Komponenten.

PC, Browser und Internetverbindung sind normalerweise vorhanden. Bei Webserver, PHP-Interpreter und Datenbank gibt es sehr viele Möglichkeiten.

Sie können:

  • das System komplett lokal auf Ihrem PC aufsetzen.

  • das System in einem Firmen-Intranet auf einem in der Firma befindlichen Server installieren.

  • einen virtuellen Server bei einem Provider anmieten.

  • einen Server bei einem Provider anmieten oder kaufen (mit Root-Zugriff).

Sie können ferner:

  • den Webserver und die Datenbank auf physisch getrennten Rechnern haben.

Sie können natürlich verschiedene

  • Fabrikate von Webservern,

  • Versionen des PHP-Interpreters,

  • Versionen der MySQL-Datenbank

benutzen.

Als Krönung können Sie alle Komponenten auf unterschiedlichen Betriebssystemen installieren und betreiben.

Diese Freiheit in der Wahl der Ressourcen erschlägt den Anfänger oft, deshalb nachfolgend ein paar typische Szenarien.

Lokale Testumgebung

Sie sitzen daheim oder in Ihrem Büro und wollen eine Joomla!-Seite aufsetzen.

Betriebssystem Windows

Variante 1

Windows XP Professional und Windows Vista Ultimate bringen von Haus aus einen Webserver mit, den Internet Information Server. Sie müssen zusätzlich noch PHP und eine Datenbank installieren und können loslegen.

Variante 2

Sie nehmen ein vorkonfiguriertes Paket (XAMPP), entpacken es auf Ihrem Rechner, und alles, was Sie benötigen, ist da.

Betriebssystem Linux

Hier kommt es auf die von Ihnen genutzte Distribution an. Alle Distributionen erlauben die einfache Installation (per Mausklick) der Pakete Apache, PHP und MySQL. Je nach Distribution sind sie unter Umständen bereits vorinstalliert.

Variante 1

Sie benutzen die in der Distribution enthaltenen Programme.

Variante 2

Sie nehmen ein vorkonfiguriertes Paket (XAMPP), entpacken es auf Ihrem Rechner, und alles, was Sie benötigen, ist da.

Betriebssystem Mac OS X

Sie haben einen Webserver standardmäßig in Ihrem System, den Sie aktivieren müssen (Apache), aber leider kein PHP. Es gibt keine offizielle PHP-Version für Mac OS X, aber es gibt ein PHP-Apache-Modul, das Sie installieren können1. Es existieren auch lauffähige MySQL-Versionen für Mac OS X, die nach einem entsprechenden Download installiert werden können2.

Variante 1

Sie benutzen den installierten Apache Webserver und installieren sich die fehlende Software dazu.

Variante 2

Es klingt wie ein Running Gag, aber nehmen Sie doch einfach das vorkonfigurierte Paket XAMPP für Mac OS X. Entpacken Sie es auf Ihrem Rechner, und alles, was Sie benötigen, ist da. Im Mac OS X-Umfeld wird auch gern auf ein anderes Komplettpaket mit dem Namen MAMP zurückgegriffen.3

Produktivumgebung

Auch hier gibt es mehrere Möglichkeiten.

Angemieteter virtueller Server

Sie mieten bei einem Provider ein Webspace-Paket mit Datenbank, PHP-Unterstützung und meist auch Ihrem Domainnamen. In diesem Fall haben Sie eine funktionfähige Umgebung, in die Sie Ihr Joomla! installieren können. Bei der Auswahl der Versionen (PHP, MySQL) sind Sie auf Ihren Provider angewiesen. Manchmal bieten die Provider auch bereits Joomla! vorinstalliert mit verschiedenen Templates an. Dann müssen Sie Joomla! nur per Mausklick aktivieren, und es steht Ihnen zur Verfügung.

Eigener Server

Sie mieten bei einem Provider einen Server und installieren darauf ein Betriebssystem Ihrer Wahl. Sie sind der Administrator dieses Systems und können wie auf Ihrem PC zuhause arbeiten.

 

2.1 Client-Server-System

Client-Server-System

Unter einem Client-Server-System versteht man eine Netzwerkstruktur, bei der Dienste von einem zentralen Server angeboten werden, auf die beliebig viele Arbeitsstationen (Clients) zugreifen können. Der Server ist für die Bereitstellung des Dienstes zuständig. Der Client kann mit dem Server kommunzieren und bietet die eigentliche Benutzeroberfläche. Der Client ist ein Internetbrowser. Die Server heißen in unserem Fall Apache und MySQL.

Ablauf eines Zugriffs auf eine Joomla!-Website im Internet

Um eine grobe Vorstellung von den Vorgängen hinter den Kulissen zu bekommen, hier eine vereinfachte Auflistung der Abläufe, um von einem Computer auf eine Joomla!-Website zugreifen zu können:

  • Internetverbindung über einen Provider herstellen.

  • Die gewünschte Website-Adresse (URL) im Browser aufrufen.

  • Der Browser nimmt Kontakt mit dem Webserver auf.

  • Der Webserver schickt eine Anfrage an den auf den Server installierten PHP-Sprach-Interpreter. Der ruft die Joomla!-PHP-Dateien auf und interpretiert sie.

  • Der PHP-Interpreter fordert die benötigten Daten bei der Datenbank an.

  • Der PHP-Interpreter erzeugt je nach Template HTML- oder XHTML-Code und gibt ihn an den Webserver weiter.

  • Der Webserver liefert die »Seite« bzw. den generierten Code an den Browser des Clients.

  • Der Browser »entdeckt« in der ihm angelieferten Seite Verweise auf CSS- und andere Dateien (Bilder, Flash-Elemente ...) und fordert diese separat beim Webserver an.

  • Während des Ladens aller benötigten Ressourcen versucht der Browser, die Seite zu »parsen« und zu »rendern«, also auseinanderzunehmen und möglichst gut darzustellen.

Sie sehen schon an diesen Abläufen, dass die Darstellung einer Joomla!-Website aus vielen Schritten besteht, die teilweise nichts mit Joomla! zu tun haben.

2.6 Vorarbeiten zur Joomla!-Installation auf einem virtuellen Server

Dieses Thema ist sehr komplex, da es mittlerweile eine unüberschaubare Anzahl von Anbietern und eine noch unüberschaubarere Kombination von installierten Apache-, PHP- und MySQL-Versionen und Webspace-Verwaltungstools gibt.

Knackpunkte bei der Installation sind

  • ein eventuell eingeschalteter Safe Mode bei PHP,

  • bei Apache die untersagte Umformung von URLs wegen der Nichtaktivierung der so genannten Apache Rewrite Engine (mod_rewrite) und

  • die Verzeichnisrechte unter Linux, die anders gesetzt werden als unter Windows.

Grundsätzlich ist der einfachste Weg, der eigentlich immer funktioniert, folgender:

  • Laden Sie sich die Datei Joomla-1.5RC3.zip auf Ihren heimischen PC und entpacken Sie alles in einem temporären Verzeichnis.

  • Laden Sie die gerade ausgepackten Dateien per FTP-Programm auf Ihren angemieteten Server. Die Dateien müssen im öffentlich zugänglichen Verzeichnis installiert werden. Meistens heißen diese Verzeichnisse htdocs, public_html oder nur html. Sie können, falls schon andere Installationen in diesem Verzeichnis sind, innerhalb des Verzeichnisses ein Unterverzeichnis angeben, in das Sie Ihr Joomla! installieren. Viele Webhoster erlauben, dass Sie Ihren angemieteten Domainnamen auf ein Verzeichnis linken. Dieser Name ist wichtig, um Ihre Website über den Browser aufrufen zu können.

  • Sie müssen herausbekommen, wie Ihre Datenbank heißt. Meistens sind eine oder auch mehrere Datenbanken in Ihrem Webhosting-Paket enthalten. Manchmal stehen Benutzername, Datenbankname und Passwort fest, manchmal müssen Sie es erst einrichten. Dazu steht Ihnen meistens eine Browser-basierte Konfigurationsoberfläche zur Verfügung. Ein Beispiel einer solchen Oberfläche sehen Sie in Abbildung 2.1.8. Sie benötigen die Datenbank-Zugangsdaten für den Webinstaller von Joomla!.

Webkonfigurator von Plesk
Abbildung 2.1.8: Webkonfigurator von Plesk

Nachdem Sie die Daten auf Ihren Server geladen haben und im Besitz der Zugangsdaten zu Ihrer Datenbank sind, kann es losgehen.

Inhalt abgleichen