1 und 1 Internet: Unterschied zwischen den Versionen

Aus Contao Community Documentation

(Installation von Contao in einer Subdomain bei 1&1 WebHosting)
(Einfügen von Contao 4 Installation über den composer per Shell)
 
(139 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=
 +
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].
  
==Installation von Contao in einer Subdomain bei 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 [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).
  
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.
+
Aus Sicherheits- bzw. Datenschutzgründen wurden die angegebenen Zugangsdaten und Domainnamen nur für dieses Beispiel verwendet.
  
Aus Sicherheits- bzw. Datenschutzgründen wurden die in diesem Beispiel angegebenen Zugangsdaten und Domainnamen frei erfunden.
+
=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 und ä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.  
 +
 
 +
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 dieses Eingabeformular:  
+
Die Einrichtung der MySQL 5-Datenbank erfolgt über ein Eingabeformular:  
  
 
[[Datei:1u1_mysql1.jpg|Datenbank anlegen]]
 
[[Datei:1u1_mysql1.jpg|Datenbank anlegen]]
  
Es kann im Zuge der Datenbankinstallation ein Weile dauern, bis der Status '''Fertig''' angezeigt wird. Anschließend sollte das Resultat aber 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]]
  
Eine gute Übersicht über die Zugangsdaten 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]]
Zeile 29: Zeile 30:
 
Damit ist die Datenbank vorbereitet.
 
Damit ist die Datenbank vorbereitet.
  
===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 ein Zugang von 1&1 WebHosting vorinstalliert wurde. Das Passwort hat man bei der Einrichtung des Webspace vom Provider mitgeteilt 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]]
  
Der Zugang setzt direkt im Basisverzeichnis des Webspace auf (deshalb wird das 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.
  
 +
==Subdomain anlegen und konfigurieren==
 +
[[Datei:1u1_domainicon.jpg|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.  
  
===Subdomain anlegen und konfigurieren===
+
Deshalb baut die neue Contao-Website zunächst '''unter einer Subdomain''' auf:
[[Datei:1u1_domainicon.jpg|Domains]]
+
  
Über dieses Icon gelangt man im ControlCenter in die Domainübersicht. Dort steht die bestellte Domain drin. Es kann nun sein, dass auf der Domain noch eine alte Homepage läuft, die erst nach Fertigstellung der Contao-Homepage ersetzt werden soll.
+
[[Datei:1u1_domain1.jpg|Domainübersicht]]
'''Deshalb baut diese Contao Website unter einer Subdomain auf.''' Man kann dann später einfach die Domainziele ändern um die Subdomain zur Hauptdomain zu machen, das geht dann ohne weitere Änderungen ab.
+
  
[[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.
  
Unter '''Neu''' kann eine neue Subdomain eingerichtet werden; für diese 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]]
  
Mit einem Haken in der Übersicht vor der neuen Subdomain und dem Button '''Verwendungsart''' kann die Subdomain schon mal konfigurieren werden. Da Contao in einem Unterverzeichnis installieren werden soll, um eine klare Trennung zu anderen Anwendungen zu haben, wird ein Verzeichnis '''cms1''' anlegt.
+
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]]
  
Nach dem OK gelangt man wieder in die Domainübersicht, wo jetzt die Subdomain auf das Verzeichnis /cms1 zeigt.
+
Nach dem '''OK''' gelangt man wieder in die Domainübersicht, wo jetzt die Subdomain auf das Verzeichnis '''/cms1''' verweist.
  
 
[[Datei:1u1_domain5.jpg|Domainübersicht mit Subdomain]]
 
[[Datei:1u1_domain5.jpg|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|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.}}
 
+
==Installation==
+
===FTP-Programm einrichten===
+
Um Contao auf die richtige Stelle im Webspace zu kopieren, müssen die FTP-Zugangsdaten in ein FTP-Programm eintragen werden. Bei Eingabe der richtigen Daten wird sich das FTP-Programm direkt in das Verzeichnis /cms1 öffnen. Jedes FTP-Programm sieht anders aus, deshalb hier nur ein Beispiel. In allen Programmen sind aber immer die gleichen Angaben zu machen.
+
{{Achtung|Bei einigen FTP-Programmen ist standardmäßig die Übertragung von versteckten Dateien (wie .htaccess) abgeschaltet. Bei Contao ist es '''sehr wichtig''', diese Dateien mit zu übertragen. Sie gewährleisten die Sicherheit gegen ungewolltes Auslesen von Daten.
+
Häufig ist es möglich Parameter für den LIST-Befehl anzugeben, dann bitte '''-la''' angeben. Hierzu sollte die Doku des verwendeten FTP-Programms weiter helfen.}}
+
  
 
{|
 
{|
 
|rowspan="6" | [[Datei:1u1_ftp2.jpg|FTP-Zugangsdaten eintragen]]
 
|rowspan="6" | [[Datei:1u1_ftp2.jpg|FTP-Zugangsdaten eintragen]]
 
|valign="top" | Protokoll:
 
|valign="top" | Protokoll:
|valign="top" | Es soll eine FTP-Verbindung aufgebaut werden.
+
|valign="top" | Es soll eine '''FTP-Verbindung''' aufgebaut werden.
 
|-
 
|-
 
|valign="top" | Server:
 
|valign="top" | Server:
|valign="top" | Hier wird einfach die Hauptdomain eingetragen,<br />welche automatisch auf die richtige IP aufgelöst wird.
+
|valign="top" | Hier wird einfach die '''Hauptdomain''' eingetragen,<br />welche automatisch auf die richtige IP aufgelöst wird.
 
|-
 
|-
 
|valign="top" | Port:
 
|valign="top" | Port:
|valign="top" | Hier trägt man den Standard-Port einer<br />FTP-Verbindung, den Port 21 ein.
+
|valign="top" | Hier trägt man den Standard-Port einer<br />FTP-Verbindung, den '''Port 21''', ein.
 
|-
 
|-
 
|valign="top" | Benutzername:
 
|valign="top" | Benutzername:
|valign="top" | Den Benutzernamen hat man in den [[1_und_1_Internet#FTP-Zugang_kontrollieren|FTP-Zugängen]]<br />im 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:
|valign="top" | Das FTP-Passwort wurde vom Provider mitgeteilt,<br />oder man hat bei den [[1_und_1_Internet#FTP-Zugang_kontrollieren|FTP-Zugängen]] ein neues<br />Passwort erstellt.
+
|valign="top" | Das FTP-Passwort wurde vom Provider mitgeteilt,<br />oder man hat beim [[1_und_1_Internet#FTP-Zugang_kontrollieren|FTP-Zugang]] ein neues<br />Passwort erstellt.
 
|-
 
|-
 
|valign="top" | Anfangsverzeichnis:
 
|valign="top" | Anfangsverzeichnis:
|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.
 
|}
 
|}
  
Wenn das FTP-Programm mit diesen Parametern gestartet wird, sollte sich auf dem Server ein leeres Verzeichnis auftun.
+
Wenn das FTP-Programm mit diesen Parametern gestartet wird, sollte es auf dem Server ein '''leeres Verzeichnis''' aufrufen.
  
 
+
==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, entpacken man das ZIP-Archiv auf dem lokalen Rechner. In dem ZIP ist als unterstes noch ein Verzeichnis mit der Versionskennung enthalten. Dieses ist das Basisverzeichnis, aus dem der Inhalt auf den Webserver geladen werden soll.
+
  
 
[[Datei:1u1_zip1.jpg|Contao ZIP-Archiv]]
 
[[Datei:1u1_zip1.jpg|Contao ZIP-Archiv]]
  
Als Besonderheit für 1&1 erstellt man in dem Basisverzeichnis eine '''.htaccess'''-Datei mit folgendem Inhalt:
+
Als '''Besonderheit''' von ''1&1 WebHosting'' erstellt man nun im '''Basisverzeichnis des Webspace''' eine '''.htaccess'''-Datei mit folgendem Inhalt:
 +
 
 
<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>
 +
{{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 1&1) auch hier diese beiden Zeilen einträgt:
 
 
<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 118: Zeile 118:
 
# Formerly known as TYPOlight Open Source CMS.
 
# Formerly known as TYPOlight Open Source CMS.
 
#
 
#
  .
 
  .
 
  .
 
 
</source>
 
</source>
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.
 +
{{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.
  
 +
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 '''<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:
  
===Aufruf des Installtools===
+
{|
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.
 +
|}
  
 +
==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.
  
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.
+
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.
  
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:
+
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:
 +
<source lang="text">$> php -r "readfile('https://getcomposer.org/installer');" | php</source>
  
{|
+
... und wahrscheinlich erscheint der erste Stolperstein: Es gibt ein Problem mit dem Code (bei mir stand was von einem nicht erkennbaren T_NEW... .
|[[Datei:1u1_install1.jpg|Datenbankconnection]]
+
 
|valign="top" | <br />Hier werden alle Daten eingetragen, die man zuvor [[1_und_1_Internet#Datenbank_anlegen|im ControlCenter unter Datenbanken]] notiert hat.
+
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.
  
.
+
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

irgendwie ist das Leben nicht fair...ich mache eine Webseite über Toilettenreinigung und Martin stellt Fotos für eine Schönheitswebseite frei...

Leo Unglaub
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge