durusmail: quixote-users: Medusa
Medusa
2003-07-01
2003-07-01
2003-07-01
2003-07-01
2003-07-01
2003-07-01
BaseHTTPServer triggers M$IE bug (was: Medusa)
2003-07-02
BaseHTTPServer triggers M$IE bug
2003-07-02
Re: Medusa
2003-07-02
2003-07-02
2003-07-02
2003-07-02
Re: Medusa
2003-07-02
Medusa
Oleg Broytmann
2003-07-01
As I already said, I am switching to Quixote from a server based on
BaseHTTPServer and CGIHTTPServer. Quixote does not have its own HTTP server
but it can be used with Medusa or Twisted. First thing I am trying is
Medusa. I have not looked at Twisted yet, may be I'll do it today or
tomorrow.
   I need a small self-contained HTTP server to run a number of small CGIs.
The server must be easily deployed on all platforms, including ones from
Redmond, so all-python solution is prefereable. Medusa+Quixote looks like a
very good solution.
   There are, though, a number of issues, mostly Medusa-related.

   First problem is that quixote.server.medusa_http does not pass all HTTP
header. I need Authorization header to implement Basic Auth authorization
scheme. Attached is a patch... just a few lines copied from
twisted_http.py.

   Second problem. For one of my CGI I need to constantly update user
screen. With BaseHTTPServer it was rather simple - just do
self.wfile.write. How could I (if I could it at all) to write to a browser
while processing a request?

   How could I say to user "good by" and stop my program? I want to do
something like that:

def quit(request):
   publisher.session_mgr.expire_session(request)
   signal_asyncore_to_process_the_last_request_and_stop()
   return "Thank you! Goodby!"

   But what is signal_asyncore_to_process_the_last_request_and_stop? I
cannot do asyncore.close_all() because it will close all sockets too early.

Oleg.
--
     Oleg Broytmann            http://phd.pp.ru/            phd@phd.pp.ru
           Programmers don't die, they just GOSUB without RETURN.
reply