Der Server Apache HTTPD kann vor allem als HTTP-Frontend von komplexeren Web-Sites verwendet werden. HTTP-Angebote aus mehreren Quellen können so zum einer einheitlichen Zugriff kombiniert werden, bei bedarf auf mehrere Rechner verteilt.
Die Informationen beziehen sich auf Apache 2.2.
Referenz auf interne Web-Server#
ProxyPass /path/ http://localhost:8080/path/ ProxyPass /other-path/ http://localhost:8081/other-path/
Erklärung: Links steht der in der Anfrage zu ersetzende Pfad /path/, der auf '/' endet. Die Endung ist wichtig, damit am Pfad keine doppelten '/' auftreten. Es ist sinnvoll den internen Pfad genauso zu benennen wie den externen, da viele Web-Applikationen absolute Links im HTML-Code herausgeben.
Header#
Durch reines Ersetzen der Anfrage würden die Localhost-URLs mit raus gegeben werden, zum Beispiel bei Redirects. Daher sind Rückwärtsersetzungen sinnvoll:RedirectEngine On ProxyPass /path/ http://localhost:8080/path/ ProxyPassReverse /path/ http://localhost:8080/path/
Erklärung: In den Headern werden die Localhost-Adressen wieder durch die Adressen der original Anfragen zurück ersetzt, daher auch 'Reverse'.
Zusätzlich können die original Domain-Angaben mit durchgereicht werden, sodass in der Software nicht speziell eine Domain konfiguriert werden braucht:
ProxyPreserveHost On
Redirect#
Umleiten des Root-Directory:RedirectMatch ^/$ http://www.intersult.com/intersult/
WebDAV#
Der Apache kann auch als WebDAV-Server konfiguriert werden. Dies kann sogar von Windows 7 (eventuell auch frühere Versionen) als Netzwerk-Laufwerk konfiguriert werden.Dazu wird in der httpd.conf folgende Konfiguration eingetragen:
LoadModule dav_module modules/mod_dav.so LoadModule dav_fs_module modules/mod_dav_fs.so LoadModule dav_lock_module modules/mod_dav_lock.so LoadModule auth_digest_module modules/mod_auth_digest.so DavLockDB "C:/Java/dav/DavLock" Alias /dav "C:/Java/dav/data" <Directory "C:/Java/dav/data"> Options Indexes MultiViews AllowOverride None Order allow,deny allow from all </Directory> <Location /dav> Dav On AuthType Digest AuthName WebDAV AuthDigestDomain /dav/ http://localhost/dav/ AuthDigestProvider file AuthUserFile "C:/Java/dav/user.passwd" <LimitExcept OPTIONS> Require valid-user </LimitExcept> </Location>
Die Verzeichnisse C:/Java/dav und C:/Java/data werden per mkdir angelegt. Die Datei user.passwd wird mit touch angelegt, Benutzer werden eingetragen mit:
htdigest C:\Java\dav\user.passwd WebDAV <username>
Server Status#
Wenn das Modul mod_status.so eingefügt wird, kann ein Serverstatus abgerufen werden. Dazu wird innerhalb eines VirtualHost ein Location-Eintrag vorgenommen:<Location /server-status> SetHandler server-status Order Deny,Allow Deny from all Allow from all AuthType Basic AuthName "Restricted Files" AuthBasicProvider file AuthUserFile "conf/user.passwd" Require user admin </Location>
Hinweis: Im Beispiel ist ein Login mit Passwortschutz konfiguriert. Die Datei user.passwd kann mit dem mitgelieferten Befehl htpasswd erstellt und bearbeitet werden.
PHP installieren#
Ein aktuelles PHP-Zip kann heruntergeladen und innerhalb des apache/php entpackt werden. In der httpd.conf braucht man folgende Einträge:LoadModule php7_module php/php7apache2_4.dll PHPIniDir php AddHandler application/x-httpd-php .php AddType application/x-httpd-php .php .html
Fragen und Antworten#
MSVCR110.dll fehlt#
Das Visual C++ Redistributable for Visual Studio 2012 installieren.Bei Windows 8 kann dies unter Umständen nicht klappen. Dort können vier Dateien msvc*110.dll manuell nach C:\Windows\system32 kopiert werden. Das geht allerdings nur, wenn die Benutzerkontensteuerung abgeschaltet wird.