Apache installieren: Unterschied zwischen den Versionen
K (→Konfiguration) |
|||
Zeile 9: | Zeile 9: | ||
* '''eigene IP''': Eine eigene IP wird gegen ein monatliches Entgelt von HS zur Verfügung gestellt und von den [[Hostmaster | Hostmastern]] eingerichet. | * '''eigene IP''': Eine eigene IP wird gegen ein monatliches Entgelt von HS zur Verfügung gestellt und von den [[Hostmaster | Hostmastern]] eingerichet. | ||
* ''' | * '''Portumleitungen Port 80 -> 8080 und 443 -> 8443''': ebenfalls von einem Hostmaster eingerichtet. | ||
== Konfiguration == | == Konfiguration == |
Version vom 20. Januar 2010, 09:53 Uhr
Der Apache ist ein Webserver zur Beantwortung von HTTP-Requests und wird üblicherweise zur Auslieferung von Webseiten genutzt. Auf HS Systemen läuft ein zentrale Apache, der standardmäßig die Anfragen für die eigene Domain verarbeitet und die eigenen Webseiten ausliefert.
Unter Umständen kann es sinnvoll sein, einen eigenen Apache zu betreiben, vor allem dann, wenn man Apache Module betreiben möchte, die vom zentralen Apache (z.B. aus Sicherheitsgründen im Shared Hosting) nicht zur Verfügung gestellt werden.
Voraussetzungen
- eigene IP: Eine eigene IP wird gegen ein monatliches Entgelt von HS zur Verfügung gestellt und von den Hostmastern eingerichet.
- Portumleitungen Port 80 -> 8080 und 443 -> 8443: ebenfalls von einem Hostmaster eingerichtet.
Konfiguration
Die Konfiguration eines Apache kann hier nicht beschrieben werden, dafür gibt es ziemlich dicke Bücher. Nur ein paar Hinweise:
- Die Konfiguration des zentralen Apache kann in großen Teilen übernommen werden, man kann also gut /etc/apache2 in das eigene Benutzerberzeichnis ~/etc/apache2 kopieren, Pfade anpassen und einmal damit starten. Aber sei gewarnt: Den Apache (auch mit Vorwissen) zum Laufen zu bringen, braucht Zeit und Geduld. Wer nicht ein Grundwissen in Linux-Administration mitbringt, sollte davon Abstand nehmen.
Hier wird die eigene IP 111.222.333.444, und das HS-Paket xyz00 angenommen:
Grundkonfiguration
ServerRoot /home/pacs/xyz00/etc/apache2 ServerName xyz00.hostsharing.net ServerAdmin xyz00@xyz00.hostsharing.net User xyz00 Group xyz00 Listen 111.222.333.444:8080 Listen 111.222.333.444:8443 NameVirtualHost 111.222.333.444:8443 NameVirtualHost 111.222.333.444:8080 ExtendedStatus On LockFile /home/pacs/xyz00/etc/apache2/run/apache2.lock PidFile /home/pacs/xyz00/etc/apache2/run/apache2.pid
Start- und Stopskripte
Um den eigenen Apache zu starten und zu stoppen, müssen eigene Skripte geschrieben werden. In diesem Beispiel wird angenommen, dass sich die Konfiguration in ~/etc/apache2 (/home/pacs/xyz00/etc/apache2) befindet, dort sind ebenfalls die Skripte für Start und Stop.
Startskript ~/etc/apache2/start-apache.sh
#! /bin/bash /usr/sbin/apache2 -f /home/pacs/xyz00/etc/apache2/apache2.conf
Stopskript ~/etc/apache2/start-apache.sh
#! /bin/bash pid=$(cat /home/pacs/xyz00/etc/apache2/run/apache2.pid) kill -TERM $pid
Wenn der eigene Apache mit mod_fcgid läuft, ist es sinnvoll (wenn auch nicht besonders schön oder elegant), bei einem Stop des Apache die unter der eigenen Benutzerkennung laufenden FCGI-Prozesse abzuwürgen. Hier wird angenommen, dass sich die Sockets innerhalb der Verzeichnisstruktur ~/etc/apache2/run/ befinden.
sleep 1 killall -u xyz00 -KILL apache2 killall -u xyz00 -KILL php rm ~/etc/apache2/run/fcgisock/* rm ~/etc/apache2/run/apache2.pid rm ~/etc/apache2/run/cgisock*
Überwachung und Start bei Systemstart
Die Überwachung des Apachen genauso wie der Start beim Hochfahren des Systems wird mit Monit gewährleitet. Dies muss natürlich entsprechend konfiguriert werden.