diff --git a/Gopkg.lock b/Gopkg.lock
index d0fa264db22e183b97be1ec28adc3d95e5c85580..43f5c57021771c62554a8842f293c9a705e2c459 100644
--- a/Gopkg.lock
+++ b/Gopkg.lock
@@ -10,32 +10,36 @@
   version = "v1.1.0"
 
 [[projects]]
-  digest = "1:61e5d7b1fabd5b6734b2595912944dbd9f6e0eaa4adef25e5cbf98754fc91df1"
+  branch = "master"
+  digest = "1:c739832d67eb1e9cc478a19cc1a1ccd78df0397bf8a32978b759152e205f644b"
   name = "github.com/PuerkitoBio/urlesc"
   packages = ["."]
   pruneopts = "UT"
-  revision = "5bd2802263f21d8788851d5305584c82a5c75d7e"
+  revision = "de5bf2ad457846296e2031421a34e2568e304e35"
 
 [[projects]]
-  digest = "1:1c19f0cbf37823c0af41a6fa5c96f0e31f899202efd91e35ab0a4410a04a4244"
+  branch = "master"
+  digest = "1:0baeef5e911d1bdf5804f77045650c298296c37aea99e98a29bc003acd0e9635"
   name = "github.com/armon/go-proxyproto"
   packages = ["."]
   pruneopts = "UT"
-  revision = "609d6338d3a76ec26ac3fe7045a164d9a58436e7"
+  revision = "5b7edb60ff5f69b60d1950397f7bde6171f1807d"
 
 [[projects]]
-  digest = "1:5bb36304653e73c2ced864d49c9f344e7141a7ceef852442edcea212094ebc3c"
+  branch = "master"
+  digest = "1:d6afaeed1502aa28e80a4ed0981d570ad91b2579193404256ce672ed0a609e0d"
   name = "github.com/beorn7/perks"
   packages = ["quantile"]
   pruneopts = "UT"
-  revision = "4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9"
+  revision = "3a771d992973f24aa725d07868b467d1ddfceafb"
 
 [[projects]]
-  digest = "1:80e67b0601f54b62b901e3822f35d8182c23270e10da813cc3ec61d5f22e9f77"
+  digest = "1:0f98f59e9a2f4070d66f0c9c39561f68fcd1dc837b22a852d28d0003aebd1b1e"
   name = "github.com/boltdb/bolt"
   packages = ["."]
   pruneopts = "UT"
-  revision = "144418e1475d8bf7abbdc48583500f1a20c62ea7"
+  revision = "2f1ce7a837dcb8da3ec595b1dac9d0632f0f99e8"
+  version = "v1.3.1"
 
 [[projects]]
   branch = "v1"
@@ -60,22 +64,24 @@
     "timeutil",
   ]
   pruneopts = "UT"
-  revision = "447b7ec906e523386d9c53be15b55a8ae86ea944"
+  revision = "97fdf19511ea361ae1c100dd393cc47f8dcfa1e1"
+  version = "v4"
 
 [[projects]]
-  digest = "1:620bade21ddf8256869717861431d52650c7e40bc56bdcd3d5ec3da63e7573b0"
+  digest = "1:ffe9824d294da03b391f44e1ae8281281b4afc1bdaa9588c9097785e3af10cec"
   name = "github.com/davecgh/go-spew"
   packages = ["spew"]
   pruneopts = "UT"
-  revision = "5215b55f46b2b919f50a1df0eaa5886afe4e3b3d"
+  revision = "8991bc29aa16c548c550c7ff78260e27b9ab7c73"
+  version = "v1.1.1"
 
 [[projects]]
   branch = "master"
-  digest = "1:2b7b174ae68705866555b73fd848de0749b93b1f99e3295e27f89bebe8702203"
+  digest = "1:f77360df85b686035d0bff3b3988b29eb7ce415328e37e82cc5ec8439822911c"
   name = "github.com/elazarl/goproxy"
   packages = ["."]
   pruneopts = "UT"
-  revision = "947c36da3153ff334e74d9d980de341d25f358ba"
+  revision = "2ce16c963a8ac5bd6af851d4877e38701346983f"
 
 [[projects]]
   digest = "1:abeb38ade3f32a92943e5be54f55ed6d6e3b6602761d74b4aab4c9dd45c18abd"
@@ -86,77 +92,89 @@
   version = "v1.4.7"
 
 [[projects]]
-  digest = "1:740c45a1cac0a027ec30d103cc94902c340fb5f15b9da7893c25c26d73cf03e0"
+  digest = "1:a9fe0f8ff72c388d0128e88ce5f3c27d37dcd0950acd7cdb8323555f12463396"
   name = "github.com/go-chi/chi"
   packages = [
     ".",
     "middleware",
   ]
   pruneopts = "UT"
-  revision = "18d990c0d1c023b05a3652d322ae36d8bdb62e07"
+  revision = "b5294d10673813fac8558e7f47242bc9e61b4c25"
+  version = "v3.3.3"
 
 [[projects]]
-  digest = "1:f76a2cc15a4dc754fa4414d9ddac6f1fa72b752244ae9dc56c8ef61559339ecd"
+  digest = "1:6921c024df19499cfcdaf33e0df635da67b959a4541b8b68d00d159791b70d07"
   name = "github.com/go-resty/resty"
   packages = ["."]
   pruneopts = "UT"
-  revision = "39c3db9c7bb4f9718ac143a83a924441521caf73"
+  revision = "a59932b061db030cf7edc11d970c8b6013d04a32"
+  version = "v1.10.3"
 
 [[projects]]
-  digest = "1:9b0e71863f18fc5de645a263184c8a6409ae731e847b35b25da4be818f1975fa"
+  digest = "1:97df918963298c287643883209a2c3f642e6593379f97ab400c2a2e219ab647d"
   name = "github.com/golang/protobuf"
   packages = ["proto"]
   pruneopts = "UT"
-  revision = "1643683e1b54a9e88ad26d98f81400c8c9d9f4f9"
+  revision = "aa810b61a9c79d51363740d207bb46cf8e620ed5"
+  version = "v1.2.0"
 
 [[projects]]
-  digest = "1:97b065743ec8322fed8aa54afc3ae82fea9cdd15ea7a82c90a8d081e0e6f0bbf"
+  digest = "1:75ab90ae3f5d876167e60f493beadfe66f0ed861a710f283fb06c86437a09538"
   name = "github.com/jonboulle/clockwork"
   packages = ["."]
   pruneopts = "UT"
-  revision = "ed104f61ea4877bea08af6f759805674861e968d"
+  revision = "2eee05ed794112d45db504eb05aa693efd2b8b09"
+  version = "v0.1.0"
 
 [[projects]]
-  digest = "1:f1bb94f5fab2a670687ec7a30a9160b0193d147ae82d5650231c01b2b3a8d0db"
+  digest = "1:ff5ebae34cfbf047d505ee150de27e60570e8c394b3b8fdbb720ff6ac71985fc"
   name = "github.com/matttproud/golang_protobuf_extensions"
   packages = ["pbutil"]
   pruneopts = "UT"
-  revision = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a"
+  revision = "c12348ce28de40eed0136aa2b644d0ee0650e56c"
+  version = "v1.0.1"
 
 [[projects]]
-  digest = "1:08413c4235cad94a96c39e1e2f697789733c4a87d1fdf06b412d2cf2ba49826a"
+  digest = "1:0028cb19b2e4c3112225cd871870f2d9cf49b9b4276531f03438a88e94be86fe"
   name = "github.com/pmezard/go-difflib"
   packages = ["difflib"]
   pruneopts = "UT"
-  revision = "d8ed2627bdf02c080bf22230dbb337003b7aba2d"
+  revision = "792786c7400a136282c1664665ae0a8db921c6c2"
+  version = "v1.0.0"
 
 [[projects]]
-  digest = "1:740c45a1cac0a027ec30d103cc94902c340fb5f15b9da7893c25c26d73cf03e0"
+  digest = "1:a9fe0f8ff72c388d0128e88ce5f3c27d37dcd0950acd7cdb8323555f12463396"
   name = "github.com/pressly/chi"
   packages = [
     ".",
     "middleware",
   ]
   pruneopts = "UT"
-  revision = "18d990c0d1c023b05a3652d322ae36d8bdb62e07"
+  revision = "b5294d10673813fac8558e7f47242bc9e61b4c25"
+  version = "v3.3.3"
 
 [[projects]]
-  digest = "1:2a587e5f573de02b01a001c04598ed3120039fdf3b60060d0f302ad820007c89"
+  digest = "1:75d51eeab0df85a3cea9e1297ccd3183b20a10cb4b48c753d8ec8d113cc14250"
   name = "github.com/prometheus/client_golang"
-  packages = ["prometheus"]
+  packages = [
+    "prometheus",
+    "prometheus/internal",
+  ]
   pruneopts = "UT"
-  revision = "c3324c1198cf3374996e9d3098edd46a6b55afc9"
+  revision = "505eaef017263e299324067d40ca2c48f6a2cf50"
+  version = "v0.9.2"
 
 [[projects]]
   branch = "master"
-  digest = "1:32d10bdfa8f09ecf13598324dba86ab891f11db3c538b6a34d1c3b5b99d7c36b"
+  digest = "1:2d5cd61daa5565187e1d96bae64dbbc6080dacf741448e9629c64fd93203b0d4"
   name = "github.com/prometheus/client_model"
   packages = ["go"]
   pruneopts = "UT"
-  revision = "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c"
+  revision = "5c3871d89910bfb32f5fcab2aa4b9ec68e65a99f"
 
 [[projects]]
-  digest = "1:0d5f8e2195ad2beef202367f3217c4a7981582d96ccf4876b9aa2c5c9c9b3510"
+  branch = "master"
+  digest = "1:33c81bf709f084827a560e14415b1d7001a6d1d6fa4bec2cc2e60b84ecbc0e0a"
   name = "github.com/prometheus/common"
   packages = [
     "expfmt",
@@ -164,25 +182,28 @@
     "model",
   ]
   pruneopts = "UT"
-  revision = "13ba4ddd0caa9c28ca7b7bffe1dfa9ed8d5ef207"
+  revision = "67670fe90761d7ff18ec1d640135e53b9198328f"
 
 [[projects]]
-  digest = "1:c78edab144d03422b52cd34d5fa4ffc9a59fef90b3afdcf2efc4dd333479f243"
+  branch = "master"
+  digest = "1:d39e7c7677b161c2dd4c635a2ac196460608c7d8ba5337cc8cae5825a2681f8f"
   name = "github.com/prometheus/procfs"
   packages = [
     ".",
+    "internal/util",
+    "nfs",
     "xfs",
   ]
   pruneopts = "UT"
-  revision = "65c1f6f8f0fc1e2185eb9863a3bc751496404259"
+  revision = "1dc9a6cbc91aacc3e8b2d63db4d2e957a5394ac4"
 
 [[projects]]
-  digest = "1:33bb0c789f5461f68df1514ae54b50cfcf942da85e189dda42710518b6a9208c"
+  digest = "1:b0c25f00bad20d783d259af2af8666969e2fc343fa0dc9efe52936bbd67fb758"
   name = "github.com/rs/cors"
   packages = ["."]
   pruneopts = "UT"
-  revision = "8dd4211afb5d08dbb39a533b9bb9e4b486351df6"
-  version = "v1.1"
+  revision = "9a47f48565a795472d43519dd49aac781f3034fb"
+  version = "v1.6.0"
 
 [[projects]]
   digest = "1:274f67cb6fed9588ea2521ecdac05a6d62a8c51c074c1fccc6a49a40ba80e925"
@@ -193,29 +214,31 @@
   version = "v1.2.0"
 
 [[projects]]
-  digest = "1:60493764c2430dfeb97c18f37bf0d815cf524daf1c1921284bb11d45deec5d4b"
+  digest = "1:c40d65817cdd41fac9aa7af8bed56927bb2d6d47e4fea566a74880f5c2b1c41e"
   name = "github.com/stretchr/testify"
   packages = [
     "assert",
     "require",
   ]
   pruneopts = "UT"
-  revision = "d77da356e56a7428ad25149ca77381849a6a5232"
+  revision = "f35b8ab0b5a2cef36673838d662e249dd9c94686"
+  version = "v1.2.2"
 
 [[projects]]
-  digest = "1:b4b301b6cdbbcd48baf1de7ff91bfb604172acc4d5e06baad684f8ef577426cb"
+  branch = "master"
+  digest = "1:3a344d16799eb12951f93add85d6f1879c7c1ac5a9cb0224b37f5b98df2f00dc"
   name = "github.com/unrolled/secure"
   packages = ["."]
   pruneopts = "UT"
-  revision = "4b41e52ab568cbfd31eda3612d98192da1575c77"
+  revision = "0d6b5bb13069ed3c463591a636dc7762c56b364a"
 
 [[projects]]
   branch = "master"
-  digest = "1:189a0e6e9c657bb662bafc41a796360d11c88eed7614b1b6f003b8fbc8847e5e"
+  digest = "1:6743b69de0d73e91004e4e201cf4965b59a0fa5caf6f0ffbe0cb9ee8807738a7"
   name = "github.com/urfave/cli"
   packages = ["."]
   pruneopts = "UT"
-  revision = "8e01ec4cd3e2d84ab2fe90d8210528ffbb06d8ff"
+  revision = "b67dcf995b6a7b7f14fad5fcb7cc5441b05e814b"
 
 [[projects]]
   digest = "1:3c1a69cdae3501bf75e76d0d86dc6f2b0a7421bc205c0cb7b96b19eed464a34d"
@@ -226,7 +249,15 @@
   version = "v1.3.2"
 
 [[projects]]
-  digest = "1:9ca531f1de53d20d64ec941157648bccbe04e3b1a0db6f95b9bea1746485517d"
+  digest = "1:60bf2a5e347af463c42ed31a493d817f8a72f102543060ed992754e689805d1a"
+  name = "go.uber.org/multierr"
+  packages = ["."]
+  pruneopts = "UT"
+  revision = "3c4937480c32f4c13a875a1829af76c98ca3d40a"
+  version = "v1.1.0"
+
+[[projects]]
+  digest = "1:c52caf7bd44f92e54627a31b85baf06a68333a196b3d8d241480a774733dcf8b"
   name = "go.uber.org/zap"
   packages = [
     ".",
@@ -234,46 +265,54 @@
     "internal/bufferpool",
     "internal/color",
     "internal/exit",
-    "internal/multierror",
     "zapcore",
   ]
   pruneopts = "UT"
-  revision = "54371c67da1bc746325e5582e48521a5db5d64ca"
+  revision = "ff33455a0e382e8a81d14dd7c922020b6b5e7982"
+  version = "v1.9.1"
 
 [[projects]]
-  digest = "1:23812fb1cce796f95720e6cd6113cf3bc6705debb9f48a80fed7bf1663bd8296"
+  branch = "master"
+  digest = "1:e3d2db9bc633f4635e6418caf0b0734c43821ecd59105d1798458c6ae4d227fd"
   name = "golang.org/x/crypto"
   packages = [
     "acme",
     "acme/autocert",
   ]
   pruneopts = "UT"
-  revision = "49796115aa4b964c318aad4f3084fdb41e9aa067"
+  revision = "505ab145d0a99da450461ae2c1a9f6cd10d1f447"
 
 [[projects]]
-  digest = "1:0be47bdf48cad39f9c9330ca0cb3b63343d237fa011157c66fee042caa4418fb"
+  branch = "master"
+  digest = "1:b6a3256ffb6ee9d7e7159c062f57e091c30c19e13ac3c676729baac7d83ecd21"
   name = "golang.org/x/net"
   packages = [
     "idna",
     "publicsuffix",
   ]
   pruneopts = "UT"
-  revision = "1c05540f6879653db88113bc4a2b70aec4bd491f"
+  revision = "927f97764cc334a6575f4b7a1584a147864d5723"
 
 [[projects]]
-  digest = "1:1435c3b63fada2c5837e52169490cbf1649b58e0146c26019d5609efdbf874ce"
+  branch = "master"
+  digest = "1:5b7594f7c43cb5fc8f31c3f4a9f6a61ee798dbd5fcb36b70cb3d4780aad4c509"
   name = "golang.org/x/sys"
   packages = ["unix"]
   pruneopts = "UT"
-  revision = "95c6576299259db960f6c5b9b69ea52422860fce"
+  revision = "9a3f9b0469bbc6b8802087ae5c0af9f61502de01"
 
 [[projects]]
-  digest = "1:1f975e18356170a33c0e8b7dda3d02bd28126463f0c024edc9b99b7eb9337c62"
+  digest = "1:0c56024909189aee3364b7f21a95a27459f718aa7c199a5c111c36cfffd9eaef"
   name = "golang.org/x/text"
   packages = [
+    "collate",
+    "collate/build",
+    "internal/colltab",
     "internal/gen",
+    "internal/tag",
     "internal/triegen",
     "internal/ucd",
+    "language",
     "secure/bidirule",
     "transform",
     "unicode/bidi",
@@ -283,7 +322,8 @@
     "width",
   ]
   pruneopts = "UT"
-  revision = "b19bf474d317b857955b12035d2c5acb57ce8b01"
+  revision = "f21a4dfb5e38f5895301dc265a8def02365cc3d0"
+  version = "v0.3.0"
 
 [[projects]]
   branch = "v1"
@@ -294,24 +334,28 @@
   revision = "db14e161995a5177acef654cb0dd785e8ee8bc22"
 
 [[projects]]
-  digest = "1:1a49f695d7bb7751130e5c68b0df9f97b0bd5bf2c0769688f3fc650e19116325"
+  digest = "1:daa8366d166ba867fb55c77ce5db9c03b2e4e235cd39300f8b3d8f743c6a9267"
   name = "gopkg.in/redis.v4"
   packages = [
     ".",
     "internal",
     "internal/consistenthash",
+    "internal/errors",
     "internal/hashtag",
     "internal/pool",
+    "internal/proto",
   ]
   pruneopts = "UT"
-  revision = "889409de38315d22b114fb5980f705e6fa48c6a2"
+  revision = "c938162545c57136fa59879746bc65d0f1db3d1e"
+  version = "v4.2.4"
 
 [[projects]]
-  digest = "1:fa62cd569ff15e4dba6dfc6d826e97a7913ef299eccd5804c9d614a84863e485"
+  digest = "1:4d2e5a73dc1500038e504a8d78b986630e3626dc027bc030ba5c75da257cdb96"
   name = "gopkg.in/yaml.v2"
   packages = ["."]
   pruneopts = "UT"
-  revision = "670d4cfef0544295bc27a114dbac37980d83185a"
+  revision = "51d6538a90f86fe93ac480b35f37b2be17fef232"
+  version = "v2.2.2"
 
 [solve-meta]
   analyzer-name = "dep"
diff --git a/middleware_test.go b/middleware_test.go
index a51be4da6c373ec233a799f0832302a20e7f0ae6..7cf62e9cc0b9721fd2606fa78320f5766b208718 100644
--- a/middleware_test.go
+++ b/middleware_test.go
@@ -157,7 +157,7 @@ func (f *fakeProxy) RunTests(t *testing.T, requests []fakeRequest) {
 			request.SetResult(&upstream)
 		}
 		if c.ProxyRequest {
-			request.SetProxy(f.getServiceURL())
+			client.SetProxy(f.getServiceURL())
 		}
 		if c.BasicAuth {
 			request.SetBasicAuth(c.Username, c.Password)
@@ -207,7 +207,7 @@ func (f *fakeProxy) RunTests(t *testing.T, requests []fakeRequest) {
 			resp, err = request.Execute(c.Method, c.URL)
 		}
 		if err != nil {
-			if !strings.Contains(err.Error(), "Auto redirect is disable") {
+			if !strings.Contains(err.Error(), "auto redirect is disabled") {
 				assert.NoError(t, err, "case %d, unable to make request, error: %s", i, err)
 				continue
 			}