diff --git a/HTTP.cabal b/HTTP.cabal
--- a/HTTP.cabal
+++ b/HTTP.cabal
@@ -1,5 +1,5 @@
 Name: HTTP
-Version: 4000.0.2
+Version: 4000.0.3
 Cabal-Version: >= 1.2
 Build-type: Simple
 License: BSD3
diff --git a/Network/Browser.hs b/Network/Browser.hs
--- a/Network/Browser.hs
+++ b/Network/Browser.hs
@@ -752,7 +752,9 @@
          Just x  -> return (insertHeader HdrAuthorization (withAuthority x rq) rq)
    let rq'' = insertHeaders (map cookieToHeader cookies) rq'
    p <- getProxy
-   let rq_to_go = normalizeRequestURI (uriToAuthorityString $ rqURI rq'') rq''
+   let rq_to_go = normalizeRequestURI False{-no close-}
+                                      (uriToAuthorityString $ rqURI rq'')
+				      rq''
    out ("Sending:\n" ++ show rq_to_go) 
    e_rsp <- 
      case p of
diff --git a/Network/HTTP/Base.hs b/Network/HTTP/Base.hs
--- a/Network/HTTP/Base.hs
+++ b/Network/HTTP/Base.hs
@@ -426,9 +426,9 @@
   -- the Host header if there is one, otherwise from the request-URI.
   -- Then we make the request-URI an abs_path and make sure that there
   -- is a Host header.
-normalizeRequestURI :: {-URI-}String -> Request ty -> Request ty
-normalizeRequestURI h r = 
-  replaceHeader HdrConnection "close" $
+normalizeRequestURI :: Bool{-do close-} -> {-URI-}String -> Request ty -> Request ty
+normalizeRequestURI doClose h r = 
+  (if doClose then replaceHeader HdrConnection "close" else id) $
   insertHeaderIfMissing HdrHost h $
     r { rqURI = (rqURI r){ uriScheme = ""
                          , uriAuthority = Nothing
diff --git a/Network/HTTP/HandleStream.hs b/Network/HTTP/HandleStream.hs
--- a/Network/HTTP/HandleStream.hs
+++ b/Network/HTTP/HandleStream.hs
@@ -65,7 +65,7 @@
 simpleHTTP_ :: HStream ty => HandleStream ty -> Request ty -> IO (Result (Response ty))
 simpleHTTP_ s r = do 
   auth <- getAuth r
-  let r' = normalizeRequestURI (host auth) r 
+  let r' = normalizeRequestURI True{-do close-} (host auth) r 
   rsp <- sendHTTP s r'
   return rsp
 
diff --git a/Network/HTTP/Stream.hs b/Network/HTTP/Stream.hs
--- a/Network/HTTP/Stream.hs
+++ b/Network/HTTP/Stream.hs
@@ -153,7 +153,7 @@
 simpleHTTP_ s r =
     do 
        auth <- getAuth r
-       let r' = normalizeRequestURI (host auth) r 
+       let r' = normalizeRequestURI True{-do close-} (host auth) r 
        rsp <- if debug then do
 	        s' <- debugStream httpLogFile s
 	        sendHTTP s' r'
