Webserver gibt es ja einige: Apache, Nginx, lighttp um nur einige zu nennen. Apache hat ja den Ruf eher groß und schwerfällig zu sein, wogegen lighttp und Co eher als klein und schlank (und somit ressourcenschonend) gelten. Warum hab ich mich trotzdem für Apache entschieden?
Der Hauptgrund war, dass es bei fast jedem Dienst den man installieren möchte (wenns jetzt vom ganz einfachen Standardfall abweicht) eine Beschreibung für Apache bekommt. Außerdem gibts viele schöne Erweiterungen, welche ich in der Form nicht für andere webserver gefunden habe.
Insofern bedeutet dies natürlich auch, dass einmal eine Migration anstehen könnte, wenn die gewünschten Features auch auf anderen Webservern zur Verfügung stehen.
Installation
sudo apt-get install apache2
[Update] Firewall freischalten
[Neu] Mittels ufw
Die Port kann ganz einfach geöffnet werden:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
[Obsolet]Mittels iptables init.d-Skript
Basierend auf meinem Artikel zum Aufsetzen der Firewall fügen wir zwei zusätzliche Regeln für die Standard-http(s) Ports (80 und 443) hinzu.
sudo vim /etc/init.d/firewall
Im Bereich der Portregeln unter # allow input PROTOCOL DST-IP PORT fügen wir die folgenden zwei Zeilen hinzu:
firewall_allow_input $IP_EXTERNAL 0.0.0.0/0 80 # HTTP
firewall_allow_input $IP_EXTERNAL 0.0.0.0/0 443 # HTTPS
Und danach Neustarten der Firewall:
sudo /etc/init.d/firewall restart
Wichtige Erweiterungen aktivieren
Für SSL
sudo a2enmod ssl
Proxy für die weiterleitung zu anderen Webservern (manche tools werdenmit eigenem Server geliefert)
sudo a2enmod proxy_http sudo /etc/init.d/apache2 restart
Vorbereitung für Webserver-Authentifizierung
sudo chown www-data:www-data www -R sudo -u www-data mkdir admin sudo htpasswd -c /var/www/admin/.htpasswd webAdmin Virt-Config Bsp http
… Bsp https …
NameVirtualHost *:443
ServerAdmin webmaster@localhost ServerName admin.janda-tsai.com
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /ajaxterm/ http://localhost:8022/
ProxyPassReverse /ajaxterm/ http://localhost:8022/
eigene virtuelle config für admin:
sudo cd /etc/apache2/sites-available
sudo cp default-ssl admin-ssl
sudo vim admin.ssl
Servername admin.
documetn root <dir /
<dir www
entfernen