From b79350601bc3faea4ca97d537ba887810daf0ba0 Mon Sep 17 00:00:00 2001 From: Vinay Sajip Date: Tue, 11 Oct 2005 13:15:31 +0000 Subject: Added Host and Content-type headers to requests sent by HTTPHandler (suggested by Steven Vereecken) --- Lib/logging/handlers.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py index 0801699..0182dfe 100644 --- a/Lib/logging/handlers.py +++ b/Lib/logging/handlers.py @@ -854,7 +854,8 @@ class HTTPHandler(logging.Handler): """ try: import httplib, urllib - h = httplib.HTTP(self.host) + host = self.host + h = httplib.HTTP(host) url = self.url data = urllib.urlencode(self.mapLogRecord(record)) if self.method == "GET": @@ -864,7 +865,15 @@ class HTTPHandler(logging.Handler): sep = '?' url = url + "%c%s" % (sep, data) h.putrequest(self.method, url) + # support multiple hosts on one IP address... + # need to strip optional :port from host, if present + i = string.find(host, ":") + if i >= 0: + host = host[:i] + h.putheader("Host", host) if self.method == "POST": + h.putheader("Content-type", + "application/x-www-form-urlencoded") h.putheader("Content-length", str(len(data))) h.endheaders() if self.method == "POST": -- cgit v0.12