From: Vinay Sajip Date: Tue, 11 Oct 2005 13:15:31 +0000 (+0000) Subject: Added Host and Content-type headers to requests sent by HTTPHandler (suggested by... X-Git-Tag: v2.5a0~1292 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b79350601bc3faea4ca97d537ba887810daf0ba0;p=python Added Host and Content-type headers to requests sent by HTTPHandler (suggested by Steven Vereecken) --- diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py index 0801699a54..0182dfede2 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":