diff options
author | pje <pje@571e12c6-e1fa-0310-aee7-ff1267fa46bd> | 2006-03-24 20:09:01 +0000 |
---|---|---|
committer | pje <pje@571e12c6-e1fa-0310-aee7-ff1267fa46bd> | 2006-03-24 20:09:01 +0000 |
commit | 960d974d98cc50eaf156a7897a8f62806579e5d2 (patch) | |
tree | ca12e5651d446c037e328b8ee41420cfefea2d48 /src/wsgiref/handlers.py | |
parent | 6e33c26dc5aa8edeef35ef44d3ab023802df7abc (diff) | |
download | wsgiref-960d974d98cc50eaf156a7897a8f62806579e5d2.tar.gz |
Implement Guido's patch for proper HTTP ``Date:`` header format
git-svn-id: svn://svn.eby-sarna.com/svnroot/wsgiref@2117 571e12c6-e1fa-0310-aee7-ff1267fa46bd
Diffstat (limited to 'src/wsgiref/handlers.py')
-rw-r--r-- | src/wsgiref/handlers.py | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/wsgiref/handlers.py b/src/wsgiref/handlers.py index 55b8147..64c4e45 100644 --- a/src/wsgiref/handlers.py +++ b/src/wsgiref/handlers.py @@ -23,17 +23,17 @@ except NameError: False = not True +# Weekday and month names for HTTP date/time formatting; always English! +_weekdayname = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"] +_monthname = [None, # Dummy so we can use 1-based month numbers + "Jan", "Feb", "Mar", "Apr", "May", "Jun", + "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] - - - - - - - - - - +def format_date_time(timestamp): + year, month, day, hh, mm, ss, wd, y, z = time.gmtime(timestamp) + return "%s, %02d %3s %4d %02d:%02d:%02d GMT" % ( + _weekdayname[wd], day, _monthname[month], year, hh, mm, ss + ) @@ -196,7 +196,7 @@ class BaseHandler: self._write('HTTP/%s %s\r\n' % (self.http_version,self.status)) if not self.headers.has_key('Date'): self._write( - 'Date: %s\r\n' % time.asctime(time.gmtime(time.time())) + 'Date: %s\r\n' % format_date_time(time.time()) ) if self.server_software and not self.headers.has_key('Server'): self._write('Server: %s\r\n' % self.server_software) |