Linux ist mit einem Marktanteil vonüber 60 Prozent das bevorzugte Betriebssystem für Webserver. Rechnet man Server-ähnliche Geräte wie NAS oder DSL-Router hinzu, liegt der Marktanteil noch deutlich höher. Die Gründe: Linux-Server lassen sich ohne zusätzliche Lizenzkosten betreiben, Linux-Systeme laufen zuverlässig und mit geringem Wartungsaufwand, und Content-Management-Systeme (CMS) wie Wordpress, Joomla oder Drupal sind schneller eingerichtet als etwa unter Windows.
Wenn Sie einen Web- oder E-Mail-Server betreiben wollen, haben Sie zwei Möglichkeiten: Sie können den Zugriff über das Internet auf einen Server erlauben, der in Ihrer eigenen Wohnung steht. Das kann ein PC sein, ein NAS oder ein Mini-PC wie der Raspberry Pi. Oder Sie mieten einen Server bei einem Hosting-Anbieter. Welche Angebote es gibt, wie Sie einen Webserver einrichten und wie Sie ein CMS installieren, zeigt dieser Artikel.
Damit Ihr PC Webseiten ausliefern kann, müssen Sie einen HTTP-Server wie Apache installieren. Außerdem sind für die meisten Content-Management-Systeme PHP und My SQL erforderlich.
Einen Webserver am heimischen PC einrichten
Der einfachste Weg, eine Website ins Internet zu bringen, ist ein Linux-Server in den heimischen vier Wänden. Sie können dafür den Linux-PC verwenden, den Sie ohnehin schon nutzen. Dieser muss dann allerdings den ganzen Tag laufen, damit Ihre Webseiten jederzeit erreichbar sind. Standard-PCs mit einer Leistungsaufnahme von 100 Watt oder mehr sind ungünstig für die Stromrechnung. Notebooks oder Mini-PCs wie der Raspberry Pi sind sparsamer.
Server-Software installieren: Damit Ihr PC Webseiten ausliefern kann, benötigen Sie einen HTTP-Server. Unter Linux kommt meist der HTTP-Server Apache zum Einsatz. Die meisten Content-Management-Systeme benötigen außerdem die Script-Sprache PHP und die Datenbank My SQL. Die nötigen Pakete installieren Sie entweder über die Software-Verwaltung der Linux-Distribution oder in einem Terminal-Fenster:
Anschließend installieren Sie noch mit sudo apt-get install phpmyadmin das Verwaltungswerkzeug für My-SQLDatenbanken. Einzelne Content-Management-Systeme benötigen unter Umständen noch weitere Pakete, etwa Perl oder Python. Informationen dazu finden Sie in der jeweiligen Installationsanleitung.
Um die Installation zu testen, geben Sie im Browser http://localhost ein. Sie sehen dann die Standardseite des Apache-Webservers mit der Nachricht "It works!".
Heimserver ins Internet bringen
Geräte in Ihrem lokalen Netzwerk sind durch die Firewall vor dem Zugriff aus dem Internet geschützt. Sie müssen daher in Ihrem DSL-Router eine Port-Weiterleitung auf Ihren Linux-PC einrichten. Suchen Sie dazu in der Konfiguration des Routers nach Stichwörtern wie "Port-Forwarding" oder "Freigaben". Bei der Fritzbox finden Sie die Einstellungen unter "Internet -> Freigaben" auf der Registerkarte "Portfreigaben". Konfigurieren Sie den Router so, dass Anfragen an Port 80 (HTTP) an Ihren Server weitergeleitet werden.
Danach ist der Server bereits über das Internet unter der externen IP-Adresse des DSL-Routers erreichbar. Da sich die IP-Adresse des DSL-Routers in der Regel jedoch alle 24 Stunden ändert, ist das nicht besonders komfortabel. Manche Provider bieten gegen Gebühr auch eine feste IPAdresse an. Eine kostenlose Alternative sind dynamische DNS-Dienste. Hier erhalten Sie eine feste Adresse in Form einer Sub-Domain für Ihre wechselnde IP, zum Beispiel meineadresse.dyndnsanbieter.xx. Die meisten Router lassen sich so konfigurieren, dass sie dem gewünschten Dyn-DNS-Dienst nach jeder Internet-Einwahl automatisch die neue IP-Adresse mitteilen.
Wenn Sie eine individuelle Webadresse bevorzugen, können Sie diese bei einem Webhoster schon für wenige Euro-Cent pro Monat registrieren lassen. Der Hoster sorgt dann für eine automatische Weiterleitung Ihrer eigenen Domain auf die IP-Adresse oder die Webadresse, unter der Ihr Server zu erreichen ist.
Tipp: Fritzbox-Nutzer können sich kostenlos bei www.myfritz.net registrieren und erhalten dann eine eigene fritz.net-URL. Freigaben für andere Geräte lassen sich über die Fritzbox-Oberfläche unter "Internet -> MyFRITZ! -> MyFRITZ!-Freigaben" konfigurieren.
Das richtige Hosting-Angebot finden
Ein Webhoster stellt Ihnen Speicherplatz auf einem Server in seinem Rechenzentrum zur Verfügung. Im einfachsten und preisgünstigsten Fall lassen sich hier nur statische HTMLSeiten ablegen. Wer mehr will, sich aber trotzdem nicht mit dem Betriebssystem befassen möchte, greift zu einem Webseiten- oder Homepage- Baukasten. Hier kann man zwischen Vorlagen für die eigene Homepage wählen und diese in bestimmten Grenzen individuell abändern.
Wer mehr Funktionen und Leistung benötigt oder das Linux-System individuell auswählen und konfigurieren möchte, greift zu einem virtuellen Server. Virtuelle Server gibt es bereits für unter 10 Euro im Monat. Mehrere Nutzer teilen sich die Hardware, aber verfügbarer Arbeitsspeicher und Gesamtsystemleitung sind meist garantiert. Bei den meisten Anbietern haben Sie bei der Installation die Wahl zwischen mehreren Linux-Systemen. Sie haben vollen root-Zugriff und können auf dem virtuellen Server einrichten, was Sie wollen. Zur Konfiguration steht Ihnen eine komfortable browserbasierte Oberfläche zur Verfügung, oder Sie arbeiten über eine SSH-Verbindung im Terminal-Fenster.
Noch mehr Leistung gibt es bei dedizierten Servern ("root-Server"). Dieser steht Ihnen komplett und exklusiv zur Verfügung. Angebote gibt es ab etwa 30 Euro pro Monat. Konfiguration und Zugriff erfolgen wie bei einem virtuellen Server über den Browser oder eine SSH-Verbindung. Wartung und Pflege des Servers ("Managed Server") kann man für etwa 100 Euro monatlich auch dem Hoster überlassen.
Wichtige Zusatzfunktionen: Bei der Auswahl des Hosting-Pakets sollten Sie die angebotenen Funktionen genau prüfen. Achten Sie vor allem auf Funktionen, die Ihnen bei einer Fehlkonfiguration des virtuellen oder dedizierten Servers weiterhelfen. Es sollte mindestens ein Notfallsystem geben, das Sie bei Problemen starten und über das Sie das installierte System reparieren können. Nützlich ist auch eine Recovery-Konsole, die den Zugriff auf das System auch dann noch erlaubt, wenn keine Netzwerkverbindung mehr vorhanden ist. Bei einigen Hostern sind Backup- und Recovery-Funktionen bereits im Preis enthalten.
Achten Sie außerdem auf Vertragslaufzeiten und Kündigungsfristen. Bei preisgünstigen Angeboten für Neukunden ist die Kündigung oft erst nach sechs oder 12 Monaten möglich. Gibt es während der Laufzeit bessere Hosting-Pakete, ist der Umstieg allerdings ohnehin nicht ganz einfach. Das System aus einem Backup auf den neuen Server zu transportieren ist zeitaufwendig; bei abweichender Hardware sind oft weitere Konfigurationsschritte erforderlich. Es geht meist schneller, das System neu zu installieren und dann die Anwendungen und Datenbanken wiederherzustellen.
Content-Management-System installieren
Die Installation aller Content-Management-Systeme verläuft ähnlich. Sie laden sich das Installationspaket vom Anbieter der jeweiligen Software herunter und entpacken die Dateien auf dem Server. Oder Sie übertragen die Dateien per FTP oder das Web-Front-End des Servers. Danach müssen Sie entweder eine Konfigurationsdatei bearbeiten oder erstellen. Bei vielen CMS genügt es auch, die Startseite oder eine bestimmte Installations-URL aufzurufen. Ein Installationsassistent führt Sie dann durch den weiteren Prozess.
Im Folgenden beschreiben wir am Beispiel des Blog-Systems Wordpress, wie die Installation abläuft. Wir gehen dabei davon aus, dass Sie Wordpress auf einem virtuellen, dedizierten oder einem eigenen Server zu Hause installieren, auf dem die Pakete wie in -> Punkt 1 beschrieben installiert sind.
1. Erstellen Sie eine Datenbank für Wordpress. Dazu rufen Sie im Browser http://MeineDomain.de/phpmyadmin auf. Passen Sie die URL entsprechend Ihrer Konfiguration an. Melden Sie sich bei phpMyAdmin als Benutzer "root" mit dem Passwort an, das Sie bei der My-SQL-Installation vergeben haben. Gehen Sie auf "Datenbanken", tippen Sie unter "Neue Datenbank anlegen" die Bezeichnung für die Datenbank ein, beispielsweise "wordpress", und klicken Sie auf "Anlegen".
2. Laden Sie das deutschsprachige Wordpress-Paket über http://wpde.org herunter. Entpacken Sie die ZIP-Datei, und öffnen Sie die enthaltene Datei "wp-config-sample.php" in einem Texteditor. Im Abschnitt unter "MySQL Einstellungen" tragen Sie die Verbindungsdaten für die Datenbank ein. "database_name_here" ersetzen Sie durch den in Schritt 1 gewählten Datenbanknamen. Für "username_here" und "password_here" tragen Sie die gleiche Kombination von Benutzernamen und Kennwort ein, die Sie in Schritt 1 für die Anmeldung bei phpMyAdmin verwendet haben. Unter "Sicherheitsschlüssel" tragen Sie Werte ein, die Sie über https://api.wordpress.org/secret-key/1.1/salt/ erzeugen. Speichern Sie die Datei als "wp-config.php" im gleichen Verzeichnis.
3. Kopieren Sie die Wordpress-Dateien auf dem Server so nach "/var/www/", dass alle Dateien und Ordner im Hauptverzeichnis liegen. Der Pfad gilt für Debian, Ubuntu oder Linux Mint. Andere Systeme verwenden eventuell andere Verzeichnisse.
4. Rufen Sie im Browser http://MeinDomain.de/wp-admin/install.php auf. Passen Sie die URL entsprechend Ihrer Konfiguration an, und folgen Sie den Anweisungen des Assistenten. Anschließend melden Sie sich bei Ihrem Wordpress-Blog an und fügen neue Inhalte hinzu. Über die Administrationsoberfläche und "Design -> Themes installieren" können Sie das Aussehen Ihres Blogs individuell gestalten. Weitere Funktionen finden Sie unter "Plugin -> Installieren".
Umziehen mit dem Content-Management-System
Es gibt Situationen, die einen Umzug des CMS notwendig machen: etwa wenn Sie die Installation zuerst zu Hause durchgeführt haben und sich nun doch für ein Hosting-Angebot entscheiden oder wenn Sie den Webhoster wechseln. Im Prinzip ist das nicht weiter schwierig. Sie müssen im Wesentlichen nur das Installationsverzeichnis und die Datenbank auf den anderen Server kopieren. Die Schwierigkeiten liegen jedoch im Detail, denn in den Konfigurationsdateien und in der Datenbank ist zumindest die URL abgelegt, unter der Ihr Server bisher erreichbar war. In einigen Fällen gibt es weitere Pfadangaben, die auf dem neuen Server nicht mehr gelten.
Bei einer Wordpress-Installation gehen Sie so vor: Rufen Sie auf Ihrem bisherigem Server phpMyAdmin im Browser auf. Wählen Sie auf der linken Seite die Wordpress-Datenbank per Mausklick aus. Gehen Sie auf "Exportieren", und klicken Sie auf "OK". Damit laden Sie eine SQL-Datei mit dem Inhalt der Datenbank herunter. Öffnen Sie die SQL-Datei in einem Texteditor. Ersetzen Sie jedes Vorkommen der bisherigen URL durch die Adresse des neuen Webservers. Auf dem neuen Server legen Sie eine Datenbank an wie in Punkt 4, Schritt 1 beschrieben. Wählen Sie die Datenbank in phpMyAdmin aus, und gehen Sie auf "Importieren". Geben Sie die zuvor exportierte Datei über "Datei auswählen" an und klicken auf "OK". Kopieren Sie dann alle Dateien der bisherigen Wordpress-Installation auf den neuen Server. Öffnen Sie dann die Datei "wp-config.php" in einen Editor, und passen Sie die Verbindungsdaten für die Datenbank an, wie in Punkt 4 beschrieben.
Tipp: Über "Exportieren" in phpMy-Admin lässt sich jede Datenbank schnell sichern und über "Importieren" wiederherstellen. Vor Updates des CMS oder von Plug-ins sollten Sie immer ein solches Backup erstellen.
Die wichtigsten Webhosting-Typen
Webadresse: Der Webhoster registriert eine Domain auf Ihren Namen und sorgt für die Weiterleitung auf einen Server. Speicherplatz und andere Dienstleistungen gibt es dabei nicht.
Kosten: meist unter einem Euro pro Monat.
Homepage-Baukasten: Sie erhalten eine Domain und Speicherplatz auf einem Webserver. Für Ihre Website wählen Sie ein vorgegebenes Design aus. Die individuellen Eingriffsmöglichkeiten sind begrenzt. Kosten: etwa 10 Euro pro Monat.
Webhosting (virtueller Server): Ihr Webserver teilt sich in einem virtuellen System die Hardware mit anderen Nutzern, lässt sich aber flexibel wie jeder andere Linux- Server konfigurieren. Im Paketpreis sind meist mehrere Domains enthalten. Bei Websites mit vielen Besuchern kann es zu Leistungsengpässen kommen. Kosten: ab 10 Euro im Monat.
Dedizierter Server ("root"-Server): Sie mieten einen eigenen Server im Rechenzentrum des Webhosters, der Ihnen exklusiv zur Verfügung steht. Die Angebote entsprechen vom Funktionsumfang her ansonsten den virtuellen Servern. Kosten: je nach Hardware ab etwa 30 Euro monatlich.
Cloud-Server: Wenn der dedizierte Server für spezielle Aktionen nicht ausreicht, können Sie mit einem Cloud-Server virtuelle Server temporär und flexibel dazu buchen: Dabei lassen sich CPU-Zahl sowie Arbeits- und Festplattenspeicher nach Bedarf konfigurieren. Kosten: ab etwa 30 Euro pro Monat.