Index: django/contrib/humanize/templatetags/humanize.py
===================================================================
--- django/contrib/humanize/templatetags/humanize.py	(revision 11178)
+++ django/contrib/humanize/templatetags/humanize.py	(working copy)
@@ -2,7 +2,7 @@
 from django.utils.encoding import force_unicode
 from django import template
 from django.template import defaultfilters
-from datetime import date
+from datetime import date, datetime
 import re
 
 register = template.Library()
@@ -80,7 +80,8 @@
     present day returns representing string. Otherwise, returns a string
     formatted according to settings.DATE_FORMAT.
     """
-    try: 
+    try:
+        tzinfo = getattr(value, 'tzinfo', None)
         value = date(value.year, value.month, value.day)
     except AttributeError:
         # Passed value wasn't a date object
@@ -88,7 +89,8 @@
     except ValueError:
         # Date arguments out of range
         return value
-    delta = value - date.today()
+    delta = value - datetime.now(tzinfo).\
+                    replace(microsecond=0, second=0, minute=0, hour=0).date()
     if delta.days == 0:
         return _(u'today')
     elif delta.days == 1:
