diff --git a/Milter/utils.py b/Milter/utils.py
index 25f057d55a6a145c43c8b7ebb694bb3a9a1464e5..6d6350c053c596ef7b0d98e16d26b5ec6124990b 100644
--- a/Milter/utils.py
+++ b/Milter/utils.py
@@ -180,7 +180,7 @@ def parse_header(val):
     for s,enc in h:
       if enc:
         try:
-	  u.append(unicode(s,enc))
+	  u.append(unicode(s,enc,'replace'))
 	except LookupError:
 	  u.append(unicode(s))
       else:
@@ -192,5 +192,6 @@ def parse_header(val):
       except UnicodeError: continue
   except UnicodeDecodeError: pass
   except LookupError: pass
+  except ValueError: pass
   except email.Errors.HeaderParseError: pass
   return val