piece of software (running on hardware) that hears HTTP requests and responds to them. Sometimes it simply delivers static documents, sometimes it's a WebApp. http://en.wikipedia.org/wiki/Comparison_of_web_servers
Sometimes an Application Server (like a Python Web Framework) will have its own built-in Web Server, other times it will run "behind" a separate server like Apache or LightTPD.
- 2007: lightweight servers
- Most Scripting Language-s include a tiny stub of Web Server code, at least suitable for running WebApp-s on the DeskTop. Jon Udell did a lot with this years ago.
- why not just use the stub?
- may want to support code built in multiple languages
- mainstream server have higher performance (at least for static pages)
- already has code to provide Security against standard vulnerabilities, plus other complements like SSL, etc. (though a Proxy Server can provide some of those)
use Server Monitoring to make sure it's up
Log/Web Traffic analyzers
who uses what? (old list)
- http://www.scripting.com/ (Dave Winer) - IIS
- http://www.opml.org/ (Dave Winer) - Userland Frontier (on Win N T)
- TadaList - LightTPD
- http://wiki.python.org/moin/ - Apache
- JotSpot signup - Apache
- TracWiki - LightTPD
Standard library: Base Http Server, Simple Http Server, Cgi Http Server
httpy http://www.zetadev.com/software/httpy/ - competing with WSGI?
WSGI, Python Paste (these come with their own servers, in addition to having protocols to run behind Apache, etc.)
Security issues with Python Base Http Server, Simple Http Server, Cgi Http Server?
- some (like Cgi Http Server) can execute arbitrary Python code
- in Cgi Http Server, CGI scripts run with user=none
Edited: | Tweet this! | Search Twitter for discussion