diff --git a/Network/Wai/Application/Classic/File.hs b/Network/Wai/Application/Classic/File.hs
--- a/Network/Wai/Application/Classic/File.hs
+++ b/Network/Wai/Application/Classic/File.hs
@@ -182,7 +182,9 @@
 
 redirectURL :: Request -> ByteString
 redirectURL req = BS.concat [
-    "http://"
+  -- Scheme must not be included because of no way to tell
+  -- http or https.
+    "//"
   -- Host includes ":<port>" if it is not 80.
   , host
   , rawPathInfo req
diff --git a/Network/Wai/Application/Classic/Redirect.hs b/Network/Wai/Application/Classic/Redirect.hs
--- a/Network/Wai/Application/Classic/Redirect.hs
+++ b/Network/Wai/Application/Classic/Redirect.hs
@@ -19,6 +19,8 @@
     path = fromByteString $ rawPathInfo req
     src = redirectSrc route
     dst = redirectDst route
-    rurl = "http://" `append` pathByteString (dst </> (path <\> src))
+    -- Scheme must not be included because of no way to tell
+    -- http or https.
+    rurl = "//" `append` pathByteString (dst </> (path <\> src))
     hdr = locationHeader rurl
     status = movedPermanently301
diff --git a/wai-app-file-cgi.cabal b/wai-app-file-cgi.cabal
--- a/wai-app-file-cgi.cabal
+++ b/wai-app-file-cgi.cabal
@@ -1,5 +1,5 @@
 Name:                   wai-app-file-cgi
-Version:                3.0.3
+Version:                3.0.4
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
