1 und 1 Internet

Aus Contao Community Documentation


Installation von Contao in einer Subdomain bei 1&1 WebHosting

Das folgende Beispiel beschreibt Schritt für Schritt die Einrichtung von Contao (Version 2.9.1) auf einem Webspace von 1&1 WebHosting.

Um Contao im Rahmen eines Hosting-Pakets von 1&1 WebHosting betreiben zu können, muss ein Paket bestellt werden, das zumindest eine MySQL 5-Datenbank enthält. Zur Zeit ist Homepage Perfect das kleinste und günstigste Paket, welches diese Mindestanforderung erfüllt (Stand Oktober 2010).

Aus Sicherheits- bzw. Datenschutzgründen wurden die angegebenen Zugangsdaten und Domainnamen nur für dieses Beispiel verwendet.

Vorbereitung

Datenbank anlegen

Datenbank

Im 1&1 ControlCenter legt man als erstes eine neue Datenbank an. In einigen der angebotenen Hosting-Pakete könnte es eventuell noch eine Auswahl zwischen verschiedenen MySQL-Versionen geben. Es ist unbedingt darauf zu achten, dass es sich bei der neu installierten Datenbank um eine MySQL 5-Datenbank handelt.

Das für die Datenbank angelegte MySQL-Passwort sollte man sich gut merken bzw. notieren. Nachdem das Passwort angelegt wurde, wird es nicht mehr offen angezeigt. Ändern lässt es sich nur, wenn man in der Datenbank eingeloggt ist.

Die Einrichtung der MySQL 5-Datenbank erfolgt über ein Eingabeformular:

Datenbank anlegen

Es kann im Zuge der Datenbankinstallation ein Weile dauern, bis der Status Fertig angezeigt wird. Anschließend sollte das Resultat etwa so aussehen:

Datenbank anlegen

Eine Übersicht über die Zugangsdaten (Datenbankname, Hostname, Benutzername) findet man unter dem Menüpunkt Bearbeiten:

Datenbank anlegen

Damit ist die Datenbank vorbereitet.

FTP-Zugang kontrollieren

FTP-Zugänge

Einen FTP-Zugang braucht man normalerweise nicht selbst anzulegen, da er von 1&1 WebHosting vorinstalliert wurde. Das Passwort hat man nach der Einrichtung des Webspace vom Provider per Mail zugesandt bekommen.

FTP-Zugänge Übersicht

Der Zugang setzt direkt im Basisverzeichnis des Webspace auf (deshalb wird als Verzeichnis /. angezeigt). Hat man das Passwort vergessen, kann unter Bearbeiten ein neues vergeben werden.

Subdomain anlegen und konfigurieren

Domains

Über dieses Icon gelangt man im 1&1 ControlCenter in die Domainübersicht. Dort ist die bestellte Domain eingetragen. Bei einem bereits bestehenden Webspace kann es sein, dass auf der Domain eine alte Website läuft, die erst nach Fertigstellung der neuen Contao-Installation durch diese ersetzt werden soll.

Deshalb baut die neue Contao-Website zunächst unter einer Subdomain auf:

Domainübersicht

Um die bestehende Website zu ersetzen, genügt es, die Domainziele zu ändern, um die Subdomain zur Hauptdomain zu machen. Weitere Änderungen sind nicht erforderlich.

Unter Neu kann eine neue Subdomain eingerichtet werden. Für diese Beispiel-Anleitung erhält sie den Namen contao.meinedomain.de:

Subdomain anlegen

Mit einem Haken in der Übersicht vor der neuen Subdomain und dem Button Verwendungsart kann die Subdomain konfiguriert werden. Da Contao in einem Unterverzeichnis installiert werden soll, um eine klare Trennung zu anderen Anwendungen zu haben, wird ein Verzeichnis cms1 angelegt.

Domain konfigurieren

Nach dem OK gelangt man wieder in die Domainübersicht, wo jetzt die Subdomain auf das Verzeichnis /cms1 verweist.

Domainübersicht mit Subdomain

Installation

FTP-Programm einrichten

Um Contao auf die richtige Stelle im Webspace zu kopieren, müssen die FTP-Zugangsdaten in das verwendete FTP-Programm eintragen werden. Bei Eingabe der richtigen Daten wird das Programm direkt das Verzeichnis /cms1 öffnen. Jedes FTP-Programm ist etwas anders aufgebaut, deshalb zeigt der Screenshot nur die Eingabemaske eines bestimmten Programms. In allen Programmen müssen aber die gleichen Zugangsdaten für den Webspace eingetragen werden.


Achtung.png Achtung: Bei einigen FTP-Programmen ist standardmäßig die Übertragung von versteckten Dateien (z.B. .htaccess) abgeschaltet. Für eine vollständige Installation von Contao ist es sehr wichtig, diese Dateien mit zu übertragen. Sie gewährleisten die Sicherheit der neuen Contao-Website gegen ungewolltes Auslesen von Daten.

Häufig ist es möglich, Parameter für den LIST-Befehl anzugeben, dann bitte -la angeben. Hier sollte die Dokumentation des verwendeten FTP-Programms weiter helfen.


FTP-Zugangsdaten eintragen Protokoll: Es soll eine FTP-Verbindung aufgebaut werden.
Server: Hier wird einfach die Hauptdomain eingetragen,
welche automatisch auf die richtige IP aufgelöst wird.
Port: Hier trägt man den Standard-Port einer
FTP-Verbindung, den Port 21, ein.
Benutzername: Den Benutzernamen hat man beim FTP-Zugang
im 1&1 ControlCenter abgelesen.
Passwort: Das FTP-Passwort wurde vom Provider mitgeteilt,
oder man hat beim FTP-Zugang ein neues
Passwort erstellt.
Anfangsverzeichnis: Hier muss das Basisverzeichnis für die Installation
angegeben werden, welches bei der Subdomain-Einrichtung
erstellt wurde.

Wenn das FTP-Programm mit diesen Parametern gestartet wird, sollte es auf dem Server ein leeres Verzeichnis aufrufen.

Upload Contao

Nachdem Contao von der offiziellen Contao-Homepage herunter geladen wurde, entpackt man das ZIP-Archiv auf dem lokalen Rechner. In dem ZIP-Paket ist ein Basisverzeichnis mit der Contao-Versionskennung enthalten. Der Inhalt ist (ohne das Basisverzeichnis selbst!) auf den Webserver zu laden.

Contao ZIP-Archiv

Als Besonderheit von 1&1 WebHosting erstellt man nun im Basisverzeichnis des Webspace eine .htaccess-Datei mit folgendem Inhalt:

AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
Hinweis.png Hinweis: Die beiden Zeilen Addtype und AddHandler werden ab php5.4 nicht mehr benötigt. Damit wird die php Version 5.2.xx unabhängig von den Control-Center Einstellungen vorgenommen. Ab April 2013 überschreibt das Control Center die .htaccess und fügt
AddHandler x-mapp-php6 .php3 .php4 .php .phtml
ein. Zusätzlich wird die Datei schreibgeschützt.


Des Weiteren bereitet man die .htaccess.default für eine spätere Verwendung vor, indem man (speziell für 1&1 WebHosting) auch hier dieselben zwei Zeilen einträgt:

#AddType x-mapp-php5 .php
AddHandler x-mapp-php6 .php3 .php4 .php .phtml
##
# Contao Open Source CMS
# Copyright (C) 2005-2010 Leo Feyer
#
# Formerly known as TYPOlight Open Source CMS.
#

Anmerkung: Ich persönlich verwende für die Installation die einfache Variante der .htaccess und wechsle erst später, wenn alles läuft, auf die im Contao-Paket enthaltene Datei, die für die URL-Umschreibung zuständig ist. Dazu muss man dann .htaccess.default in .htaccess umbenennen.

Hinweis.png Hinweis: Unter Umständen funktioniert die URL-Umschreibung nur, wenn die RewriteBase auf jeden Fall gesetzt ist.
  RewriteBase /

Die optimierte Umschreibung mit mod_cache funktioniert unter Umständen auch. Bitte ausprobieren.

  RewriteRule (.*\.html)$ index.php/$1 [L]


Aufruf des Installtools

Inzwischen sollte auch die Subdomain contao.meinedomain.de verfügbar sein, so dass man mit der Installation von Contao beginnen kann.

Da die Installation aus der Sicht der Subdomain in der Root liegt (/cms1 ist die Root der Subdomain!), braucht man kein Unterverzeichnis beim Aufruf anzugeben oder die Rewrite-Base in der .htaccess zu verändern.

Den Contao-Installer ruft man mit http://contao.meinedomain.de/contao/install.php auf (bei älteren Paketen natürlich mit dem Pfad typolight statt contao). Der Ablauf der Installation ist auf der Seite Installation beschrieben, hier zeige ich nur die speziellen Einstellungen, die bei 1&1 WebHosting anzuwenden sind:

Datenbankconnection

Hier werden alle Daten eingetragen, die man zuvor im ControlCenter bei der Anlage der Datenbank notiert hat.

Das sollte es dann gewesen sein

Installation von Contao über SSH

1 und 1 bietet bei großeren Paketen auch einen ssh-Zugang auf den Webserver an. Contao 4.0.0 lässt sich aktuell nur über den Composer (ein PHP-Installer) installieren. So steht es auf der Seite.

Wie vorhin auch empfiehlt es sich, erst die Datenbank vorzubereiten (braucht aktuell etwa 5 Minuten bis sie eingerichtet ist), dann die Subdomain anzulegen (hier kann man auch gleich ein neues Verzeichnis im Webspace anlegen und die Subdomain dann genau darauf zeigen lassen) und dann sich per SSH auf den Webspace verbinden.

Bisher bin ich mit Contao 4.0 leider nur gescheitert, aber deshalb dokumentiere ich erstmal nur die Stolpersteine, die ich aus dem Weg räumen konnte. Im Webspace selbst liegt kein Composer verfügbar, dehalb muss man den erstmal runterladen.

Am Besten im Rootverzeichnis:

$> php -r "readfile('https://getcomposer.org/installer');" | php

... und wahrscheinlich erscheint der erste Stolperstein: Es gibt ein Problem mit dem Code (bei mir stand was von einem nicht erkennbaren T_NEW... .

An genau diesem Punkt solltet Ihr überprüfen, ob bei Euch auch der Aufruf des PHP-Interpreters (also $> php --version) auf eine Version höher als 5.3 zeigt. Bei mir zeigte der Aufruf auf PHP 4.4 (!!!). Da Ihr auf einem Linux-Server seid könnt Ihr aber spicken, welche weiteren PHP-Versionen noch installiert sind. Und da fand ich php 5.5.

Also geht der korrekte Aufruf entweder
$> /usr/bin/php5.5-cli -r "readfile('https://getcomposer.org/installer');" | /usr/bin/php5.5-cli
und Ihr müsst dann jedesmal den ganzen Sermon eintippern, oder aber Ihr macht einen Alias, der den PHP-Aufruf direkt umbaut. Voreingestellt ist, daß eine SSH-Sitzung die BASH nutzt (das könnt Ihr mit
>$ env | grep SHELL
prüfen). Diese Wissen hilft, der SSH-Sitzung (genauer der BASH darin) mitzuteilen, daß der Aufruf von php in /usr/bin/php5.5-cli umgedeutet wird, bevor er ausgeführt wird. Der Befehl dazu lautet
alias php='/usr/bin/php5.5-cli'
. Diesen Alias kann man auch, wenn man ihn nicht jedesmal nach dem Einloggen neu anlegen will, in die Datei ~/.bashrc schreiben. Diese Datei wird nach dem Einloggen per SSH in eine BASH-Sitzung automatisch zu Beginn ausgeführt.

Nachdem der Composer jetzt installiert ist und Ihr mit dem richtigen PHP-Interpreter arbeitet, könnt Ihr jetzt das Contao-Projekt mit dem Befehl

php composer.phar create-project contao/standard-edition <Zielverzeichnis> 4.0.0
aufsetzen.

Wenn alles gut geht, sollte jetzt Contao 4.0.0 auf den Webserver geladen werden und zwar in der aktuellsten Version von 4.0.0 .

Ein weiterer Stolperstein ist, daß der Composer recht speicherhungrig ist und deshalb im Laufe des Prozesses sehr viel Speicher allokieren will, der auf einem Webserver in der php.ini festgelegt wurde. Da Ihr, wenn Ihr nur Webspace gebucht habt, nie alleine auf einem Server seid, wird mit dieser Einstellung sichergestellt, daß nicht ein Benutzer allen Speicherplatz allokiert und die anderen gehosteten Präsenzen unbenutzbar werden.

Mit dem Befehl
php -r "echo ini_get('memory_limit').PHP_EOL;"
könnt Ihr sehen, wie viel Speicher Euer Provider Euch in der php.ini zugesteht.

Da Ihr wahrscheinlich Contao auch lokal installieren werdet, werdet Ihr Euch auch in den Tiefen der Apache-Konfiguration wiederfinden. Dort seht Ihr dann den Link zu PHP (AddType), darüber und über phpinfo() auch den Speicherort der php.ini Datei und dort könnt Ihr den Speicherbedarf anpassen.


-- do_while - 2010-06-28

Ansichten
Meine Werkzeuge

Contao Community Documentation

Irgendwie wird es im Mumble immer ruhiger wenn sich der Kim-Faktor verkleinert.

Sascha Müller
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge