venkatbo wrote:
> > ... What specific features of HTTP/1.1 are you
interested in?
>
> Basically a subset of those features listed in
> http://www.lighttpd.n
et/modules
Here's that list and how CP stacks up (rearranged a bit to
separate CP's
server from CP's app framework). Y = Yes, N = No, and E =
someone has
written an extension
HTTP/1.1 features/compliance:
CP Framework:
Y * Ranges (start-end, start-, -end, multiple ranges)
Y * methods: GET, HEAD, POST
* External Cache Support
Y o Last-Modified + If-Modified handling
N o ETag + If-None-Match handling
Y * sends Content-Type
* on-the-fly output compression
N o deflate
Y o gzip
* authentification
E o basic, digest
E o backends: plain files, htpasswd, htdigest, ldap
Y * Sends 206 for Range Requests
Y * Sends 304 for If-Modified Requests
Y * Sends 400 for missing Host on HTTP/1.1 requests
Y * Sends 400 for broken Request-Line
Y * Sends 411 for missing Content-Length on POST requests
Y * Sends 416 for "out-of-range" on Range:
Header
E * Sends 405 (501) for request-method != (GET|POST|HEAD)
[?? lighttpd doesn't allow PUT or DELETE ?!?!]
N * Sends 505 for protocol != HTTP/1.0 or HTTP/1.1
Y * Sends Date: on every requests
N * Validates Host headers
CP server:
* Persistent Connections
N o HTTP/1.0 Keep-Alive
N o HTTP/1.1 persistent Connections
Y o sends Content-Length if possible
N o sends Transfer-Encoding: chunk, if
Content-Length is not
possible
As you can see, CP-the-framework already supports most
HTTP/1.1
features. Most of those features which it does not support
either
already have extensions for them, or one could easily be
written (ETag,
deflate, protocol checking, host validation).
If you don't need to support persistent connections or
requests of
unknown length, the builtin server should work just fine for
you.
Robert Brewer
System Architect
Amor Ministries
fumanchu amor.org
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the
Google Groups "cherrypy-users" group.
To post to this group, send email to cherrypy-users googlegroups.com
To unsubscribe from this group, send email to
cherrypy-users-unsubscribe googlegroups.com
For more options, visit this group at http://
groups.google.com/group/cherrypy-users
-~----------~----~----~----~------~----~------~--~---
|