Index: django/utils/dateformat.py
===================================================================
--- django/utils/dateformat.py	(revision 10201)
+++ django/utils/dateformat.py	(working copy)
@@ -17,6 +17,7 @@
 from django.utils.encoding import force_unicode
 from calendar import isleap, monthrange
 import re, time
+from email.utils import formatdate
 
 re_formatchars = re.compile(r'(?<!\\)([aAbBdDfFgGhHiIjlLmMnNOPrsStTUwWyYzZ])')
 re_escaped = re.compile(r'\\(.)')
@@ -170,8 +171,11 @@
         return u"%+03d%02d" % (seconds // 3600, (seconds // 60) % 60)
 
     def r(self):
-        "RFC 2822 formatted date; e.g. 'Thu, 21 Dec 2000 16:01:07 +0200'"
-        return self.format('D, j M Y H:i:s O')
+        "RFC 2822 formatted date; e.g. 'Thu, 21 Dec 2000 16:01:07 +0200'"        
+        # solution taken from http://bugs.python.org/issue665194 until
+        # Python addresses implements this feature
+        timestamp = time.mktime(self.data.timetuple())
+        return formatdate(timestamp)
 
     def S(self):
         "English ordinal suffix for the day of the month, 2 characters; i.e. 'st', 'nd', 'rd' or 'th'"
Index: tests/regressiontests/dateformat/tests.py
===================================================================
--- tests/regressiontests/dateformat/tests.py	(revision 10201)
+++ tests/regressiontests/dateformat/tests.py	(working copy)
@@ -69,6 +69,12 @@
 
 >>> format(the_future, r'Y')
 u'2100'
+
+>>> from django.conf import settings
+>>> settings.LANGUAGE_CODE='es'
+>>> translation.activate('es')
+>>> no_tz or format(my_birthday, 'r') == 'Sun, 8 Jul 1979 22:00:00 +0100'
+True
 """
 
 from django.utils import dateformat, translation
