Fix version output when missing.
[plcapi.git] / ModPython.py
index e5f1174..0d630d7 100644 (file)
@@ -6,6 +6,7 @@
 #
 # Copyright (C) 2004-2006 The Trustees of Princeton University
 # $Id$
+# $URL$
 #
 
 import sys
@@ -45,15 +46,18 @@ def handler(req):
         # Handle request
         response = api.handle(remote_addr, request)
 
+        # Shut down database connection, otherwise up to MaxClients DB
+        # connections will remain open.
+        api.db.close()
+
         # Write response
-        req.content_type = "text/xml"
-        req.headers_out.add("Content-length", str(len(response)))
+        req.content_type = "text/xml; charset=" + api.encoding
         req.send_http_header()
         req.write(response)
 
         return apache.OK
 
-    except:
+    except Exception, err:
         # Log error in /var/log/httpd/(ssl_)?error_log
-        print >> log, traceback.format_exc()
+        print >> log, err, traceback.format_exc()
         return apache.HTTP_INTERNAL_SERVER_ERROR