1 und 1 Internet: Unterschied zwischen den Versionen

Aus Contao Community Documentation

(Upload Contao)
(Einfügen von Contao 4 Installation über den composer per Shell)
 
(45 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
[[Category:Installation und Updates]]
 
[[Category:Installation und Updates]]
  
==Installation von Contao in einer Subdomain bei 1&1 WebHosting==
+
=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 [http://www.1und1.de/ 1&1 WebHosting].
  
Das folgende Beispiel beschreibt Schritt für Schritt die Einrichtung von Contao auf einem Shared Webspace von [http://www.1und1.de/ 1&1 WebHosting]. Um Contao im Rahmen eines Hosting-Pakets von 1&1 betreiben zu können, muss ein Paket bestellt werden, das zumindest eine MySQL 5-Datenbank enthält. Zur Zeit ist "1&1 Homepage Perfect" das kleinste Paket, welches diese Mindestanforderung erfüllt.
+
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 [http://www.1und1.info/xml/order/FirmenHomepageTariff;jsessionid=1A21BCC1FBE3CE622428A554B44B7AF1.TCpfix155b?__frame=_top&linkOrigin=WebHostingPakete&linkId=weiter&linkType=btn1&1/ Homepage Perfect] das kleinste und günstigste Paket, welches diese Mindestanforderung erfüllt (Stand Oktober 2010).
  
Aus Sicherheits- bzw. Datenschutzgründen wurden die in diesem Beispiel angegebenen Zugangsdaten und Domainnamen frei erfunden.
+
Aus Sicherheits- bzw. Datenschutzgründen wurden die angegebenen Zugangsdaten und Domainnamen nur für dieses Beispiel verwendet.
  
<br />
+
=Vorbereitung=
 
+
==Datenbank anlegen==
==Vorbereitung==
+
===Datenbank anlegen===
+
 
[[Datei:1u1_mysqlicon.jpg|Datenbank]]
 
[[Datei:1u1_mysqlicon.jpg|Datenbank]]
  
Im [http://login.1und1.de 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, kann man es nicht mehr sehen. Ändern lässt es sich nur, wenn man in der Datenbank eingeloggt ist.
+
Im [http://login.1und1.de 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.  
  
<br />
+
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:  
 
Die Einrichtung der MySQL 5-Datenbank erfolgt über ein Eingabeformular:  
  
 
[[Datei:1u1_mysql1.jpg|Datenbank anlegen]]
 
[[Datei:1u1_mysql1.jpg|Datenbank anlegen]]
 
<br />
 
  
 
Es kann im Zuge der Datenbankinstallation ein Weile dauern, bis der Status '''Fertig''' angezeigt wird. Anschließend sollte das Resultat etwa so aussehen:
 
Es kann im Zuge der Datenbankinstallation ein Weile dauern, bis der Status '''Fertig''' angezeigt wird. Anschließend sollte das Resultat etwa so aussehen:
  
 
[[Datei:1u1_mysql2.jpg|Datenbank anlegen]]
 
[[Datei:1u1_mysql2.jpg|Datenbank anlegen]]
 
<br />
 
  
 
Eine Übersicht über die Zugangsdaten (Datenbankname, Hostname, Benutzername) findet man unter dem Menüpunkt '''Bearbeiten''':
 
Eine Übersicht über die Zugangsdaten (Datenbankname, Hostname, Benutzername) findet man unter dem Menüpunkt '''Bearbeiten''':
  
 
[[Datei:1u1_mysql3.jpg|Datenbank anlegen]]
 
[[Datei:1u1_mysql3.jpg|Datenbank anlegen]]
 
<br />
 
  
 
Damit ist die Datenbank vorbereitet.
 
Damit ist die Datenbank vorbereitet.
  
<br />
+
==FTP-Zugang kontrollieren==
 
+
===FTP-Zugang kontrollieren===
+
 
[[Datei:1u1_ftpicon.jpg|FTP-Zugänge]]
 
[[Datei:1u1_ftpicon.jpg|FTP-Zugänge]]
  
Einen FTP-Zugang braucht man normalerweise nicht selbst anzulegen, da er von [http://www.1und1.de/ 1&1 WebHosting] vorinstalliert wurde. Das Passwort hat man nach der Einrichtung des Webspace vom Provider per Mail zugesandt bekommen.
+
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.
  
 
[[Datei:1u1_ftp1.jpg|FTP-Zugänge Übersicht]]
 
[[Datei:1u1_ftp1.jpg|FTP-Zugänge Übersicht]]
 
<br />
 
  
 
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.
 
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.
  
<br />
+
==Subdomain anlegen und konfigurieren==
 
+
===Subdomain anlegen und konfigurieren===
+
 
[[Datei:1u1_domainicon.jpg|Domains]]
 
[[Datei:1u1_domainicon.jpg|Domains]]
  
Über dieses Icon gelangt man im [http://login.1und1.de 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.  
+
Ü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:
 
Deshalb baut die neue Contao-Website zunächst '''unter einer Subdomain''' auf:
  
 
[[Datei:1u1_domain1.jpg|Domainübersicht]]
 
[[Datei:1u1_domain1.jpg|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.
 
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''':
 
Unter '''Neu''' kann eine neue Subdomain eingerichtet werden. Für diese Beispiel-Anleitung erhält sie den Namen '''contao.meinedomain.de''':
  
 
[[Datei:1u1_domain2.jpg|Subdomain anlegen]]
 
[[Datei:1u1_domain2.jpg|Subdomain anlegen]]
 
<br />
 
  
 
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.
 
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.
  
 
[[Datei:1u1_domain4.jpg|Domain konfigurieren]]
 
[[Datei:1u1_domain4.jpg|Domain konfigurieren]]
 
<br />
 
  
 
Nach dem '''OK''' gelangt man wieder in die Domainübersicht, wo jetzt die Subdomain auf das Verzeichnis '''/cms1''' verweist.
 
Nach dem '''OK''' gelangt man wieder in die Domainübersicht, wo jetzt die Subdomain auf das Verzeichnis '''/cms1''' verweist.
Zeile 81: Zeile 62:
 
[[Datei:1u1_domain5.jpg|Domainübersicht mit Subdomain]]
 
[[Datei:1u1_domain5.jpg|Domainübersicht mit Subdomain]]
  
<br />
+
=Installation=
 
+
==FTP-Programm einrichten==
==Installation==
+
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.
===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 hier nur ein Beispiel. In allen Programmen müssen aber die gleichen Zugangsdaten für den Webspace eingetragen werden.
+
  
 
{{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.
 
{{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.
Zeile 103: Zeile 82:
 
|-
 
|-
 
|valign="top" | Benutzername:
 
|valign="top" | Benutzername:
|valign="top" | Den Benutzernamen hat man beim [[1_und_1_Internet#FTP-Zugang_kontrollieren|FTP-Zugang]]<br />im [http://login.1und1.de 1&1 ControlCenter] abgelesen.
+
|valign="top" | Den Benutzernamen hat man beim [[1_und_1_Internet#FTP-Zugang_kontrollieren|FTP-Zugang]]<br />im ''1&1 ControlCenter'' abgelesen.
 
|-
 
|-
 
|valign="top" | Passwort:
 
|valign="top" | Passwort:
Zeile 111: Zeile 90:
 
|valign="top" | Hier muss das '''Basisverzeichnis''' für die Installation<br />angegeben werden, welches bei der [[1_und_1_Internet#Subdomain_anlegen_und_konfigurieren|Subdomain-Einrichtung]]<br />erstellt wurde.
 
|valign="top" | Hier muss das '''Basisverzeichnis''' für die Installation<br />angegeben werden, welches bei der [[1_und_1_Internet#Subdomain_anlegen_und_konfigurieren|Subdomain-Einrichtung]]<br />erstellt wurde.
 
|}
 
|}
<br />
+
 
 
Wenn das FTP-Programm mit diesen Parametern gestartet wird, sollte es auf dem Server ein '''leeres Verzeichnis''' aufrufen.
 
Wenn das FTP-Programm mit diesen Parametern gestartet wird, sollte es auf dem Server ein '''leeres Verzeichnis''' aufrufen.
  
<br />
+
==Upload Contao==
 
+
Nachdem Contao von der [http://www.contao.org/herunterladen.html 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.
===Upload Contao===
+
Nachdem Contao von der [http://www.contao.org/herunterladen.html offiziellen 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.
+
<br />
+
  
 
[[Datei:1u1_zip1.jpg|Contao ZIP-Archiv]]
 
[[Datei:1u1_zip1.jpg|Contao ZIP-Archiv]]
  
<br />
+
Als '''Besonderheit''' von ''1&1 WebHosting'' erstellt man nun im '''Basisverzeichnis des Webspace''' eine '''.htaccess'''-Datei mit folgendem Inhalt:
Als Besonderheit von [http://www.1und1.de/ 1&1 WebHosting] erstellt man in dem '''Basisverzeichnis des Webspace''' eine '''.htaccess'''-Datei mit folgendem Inhalt:
+
 
<br />
+
 
<source lang="text">
 
<source lang="text">
 
AddType x-mapp-php5 .php
 
AddType x-mapp-php5 .php
 
AddHandler x-mapp-php5 .php
 
AddHandler x-mapp-php5 .php
 
</source>
 
</source>
<br />
+
{{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 <source lang="text">AddHandler x-mapp-php6 .php3 .php4 .php .phtml</source> 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:
  
Des Weiteren bereitet man die '''.htaccess.default''' für eine spätere Verwendung vor, indem man (speziell für [http://www.1und1.de/ 1&1 WebHosting]) auch hier dieselben zwei Zeilen einträgt:
 
<br />
 
 
<source lang="text">
 
<source lang="text">
AddType x-mapp-php5 .php
+
#AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
+
AddHandler x-mapp-php6 .php3 .php4 .php .phtml
 
##
 
##
 
# Contao Open Source CMS
 
# Contao Open Source CMS
Zeile 143: Zeile 119:
 
#
 
#
 
</source>
 
</source>
<br />
 
  
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.
+
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.
<br />
+
{{Hinweis|Unter Umständen funktioniert die URL-Umschreibung nur, wenn die RewriteBase auf jeden Fall gesetzt ist.
 +
<source lang="apache">
 +
  RewriteBase /
 +
</source>
 +
Die optimierte Umschreibung mit mod_cache funktioniert unter Umständen auch. Bitte ausprobieren.
 +
<source lang="apache">
 +
  RewriteRule (.*\.html)$ index.php/$1 [L]
 +
</source>}}
  
'''Das ganze Paket (ab Basisverzeichnis) lädt man jetzt per FTP auf den Webspace hoch.'''
+
==Aufruf des Installtools==
 +
Inzwischen sollte auch die Subdomain '''contao.meinedomain.de''' verfügbar sein, so dass man mit der Installation von Contao beginnen kann.
  
<br />
+
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.
  
===Aufruf des Installtools===
+
Den Contao-Installer ruft man mit '''<nowiki>http://contao.meinedomain.de/contao/install.php</nowiki>''' auf (bei älteren Paketen natürlich mit dem Pfad ''typolight'' statt ''contao''). Der Ablauf der Installation ist auf der Seite  [[Installation| Installation ]] beschrieben, hier zeige ich nur die speziellen Einstellungen, die bei ''1&1 WebHosting'' anzuwenden sind:
So - inzwischen sollte auch die Subdomain '''contao.meinedomain.de''' verfügbar sein, so dass man mit der Installation von Contao beginnen kann.
+
  
 +
{|
 +
|[[Datei:1u1_install1.jpg|Datenbankconnection]]
 +
|valign="top" | <br /> <br />Hier werden alle Daten eingetragen, die man zuvor im ''ControlCenter'' bei der [[1_und_1_Internet#Datenbank_anlegen| Anlage der Datenbank]] notiert hat.
 +
|}
  
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.
+
==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.
  
Den Installer ruft man einfach mit '''<nowiki>http://contao.meinedomain.de/contao/install.php</nowiki>''' auf (bei älteren Paketen natürlich mit dem Pfad typolight anstatt contao). Der Ablauf der Installation ist [[Installation|auf der Seite Installation]] beschrieben, hier also nur die speziellen Einstellungen, die bei 1&1 anzuwenden sind:
+
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:
|[[Datei:1u1_install1.jpg|Datenbankconnection]]
+
<source lang="text">$> php -r "readfile('https://getcomposer.org/installer');" | php</source>
|valign="top" | <br />Hier werden alle Daten eingetragen, die man zuvor [[1_und_1_Internet#Datenbank_anlegen|im ControlCenter unter Datenbanken]] notiert hat.
+
 
|}
+
... 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 <code>$> php --version</code>) 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 <source lang="text">$> /usr/bin/php5.5-cli -r "readfile('https://getcomposer.org/installer');" | /usr/bin/php5.5-cli </source> 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 <source lang="text">>$ env | grep SHELL</source> 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
 +
<source type="text">alias php='/usr/bin/php5.5-cli'</source>. 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
 +
<source type="text">php composer.phar create-project contao/standard-edition <Zielverzeichnis> 4.0.0</source> aufsetzen.
  
<br />
+
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 .
  
===Das sollte es dann gewesen sein===
+
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 <source type="text">php -r "echo ini_get('memory_limit').PHP_EOL;"</source> 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.
  
 
----
 
----
  
 
-- [[Benutzer:do_while|do_while]] - 2010-06-28
 
-- [[Benutzer:do_while|do_while]] - 2010-06-28

Aktuelle Version vom 17. Juni 2015, 09:50 Uhr


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

Pelle: gibt's ein besseres Wort für "beschränkt"?
Thomas: "Kunde"

Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge