diff --git a/lib/local-web-server.js b/lib/local-web-server.js index 1eec7ca..20539d3 100644 --- a/lib/local-web-server.js +++ b/lib/local-web-server.js @@ -88,6 +88,7 @@ function localWebServer (options) { if (options.rewrite && options.rewrite.length) { options.rewrite.forEach(route => { if (route.to) { + /* `to` address is remote if the url specifies a host */ if (url.parse(route.to).host) { debug('proxy rewrite', `${route.from} -> ${route.to}`) app.use(_.all(route.from, mw.proxyRequest(route, app))) diff --git a/lib/middleware.js b/lib/middleware.js index a5359ca..559adac 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -33,14 +33,6 @@ function proxyRequest (route, app) { .replace(re, arguments[index + 1] || '') }) - /* test no keys remain in the new path */ - keys.length = 0 - pathToRegexp(url.parse(route.new).path, keys) - if (keys.length) { - this.throw(500, `[PROXY] Invalid target URL: ${route.new}`) - return next() - } - this.response = false debug('proxy request', `from: ${this.path}, to: ${url.parse(route.new).href}`)