|
|
Prophet WebserverSoftware zu schreiben, welche die Kommunikation zwischen verschiedenen Endgeräten ermöglicht, ist eines der interessantesten Gebiete in der Softwareentwicklung. Und da Apache für kleinere bis mittelgroße Präsenzen oftmals etwas überdimensioniert ist (vor allem die Konfiguration für Anfänger) und mir die Programmierung von Serversoftware und Protokollen Spaß macht, entstand die Idee, für meine Internetpräsenz einen einfachen und plattformunabhängigen Webserver zu entwickeln, ohne auf wichtige Dinge wie Authentifizierung oder einer Rewrite-Engine verzichten zu müssen.

Merkmale: - HTTP/1.1-Standard
- Beliebig viele unabhängige Instanzen. Multithreaded.
- Virtuelle Hosts, gruppiert nach realen Benutzern
- Wartungskonsole für entfernte oder lokale Wartung
- Einfache XML Konfiguration. Jede Instanz und Host kann individuell konfiguriert werden.
- Rewrite Engine (analog zu mod_rewrite)
- Traffic und Bandbreitenkontrolle
- Möglichkeit zur Erstellung von Sicherheitsregeln und Abfrage-Analysen
- Unterstützt Scripting-Sprachen wie PHP/Perl usw. (CGI-Interface)
- Umfangreiche Loggingmöglichkeiten (eigenes Logfileformat sowie NCSA-Logfile-Format; SQL-Logging optional)
- .htaccess-Unterstützung (nicht zu 100%)
- HTTP-Authentifizierung
- Eigene, anpassbare Fehlerseiten
- Möglichkeit zur Ausführung von Wartungs-Scripts. Keine Notwendigkeit von Cronjobs oder anderen Taskplanern.
- Keine Root/Administratorprivilegien erforderlich
- Schnell, klein und übersichtlich
- Plattformunabhängig
- Aus Sicherheitsgründen ist ausser den Log-Mechanismen nichts implementiert was schreibend auf die Festplatte zugreifen könnte. Ausgehender Internetverkehr ist ebenso nicht möglich. Also keine versehentliche Konfiguration als Proxy ;-)
- 100% Java
ToDo:
- Transfer via Accept Ranges: bytes (Partial Content)
- FastCGI Unterstützung
- https
- Dokumentation
Geplant:
- Unterstützung von Plugins
- SSL-Unterstützung
- JSP-Unterstützung
- Load balancer
Current version: 0.4.3 (27.01.2008)
|
|
|