diff --git a/bin/http-server b/bin/http-server index a432dd3e4..a946000cd 100755 --- a/bin/http-server +++ b/bin/http-server @@ -9,6 +9,7 @@ var colors = require('colors'), opener = require('opener'), argv = require('optimist') .boolean('cors') + .boolean('auto') .argv; var ifaces = os.networkInterfaces(); @@ -32,6 +33,7 @@ if (argv.h || argv.help) { ' -U --utc Use UTC time format in log messages.', '', ' -P --proxy Fallback proxy if the request cannot be resolved. e.g.: http://someurl.com', + ' --auto Set proxy autoRewrite flag for proxy, handling 301/302 responses', '', ' -S --ssl Enable https.', ' -C --cert Path to ssl cert file (default: cert.pem).', @@ -109,6 +111,10 @@ function listen(port) { } } + if (argv.auto) { + options.autoRewrite = true; + } + if (ssl) { options.https = { cert: argv.C || argv.cert || 'cert.pem', diff --git a/lib/http-server.js b/lib/http-server.js index 8d849109e..02c434e3c 100644 --- a/lib/http-server.js +++ b/lib/http-server.js @@ -106,7 +106,8 @@ function HttpServer(options) { before.push(function (req, res) { proxy.web(req, res, { target: options.proxy, - changeOrigin: true + changeOrigin: true, + autoRewrite: options.autoRewrite }); }); }