diff --git a/lib/cli/server.js b/lib/cli/server.js
index <HASH>..<HASH> 100644
--- a/lib/cli/server.js
+++ b/lib/cli/server.js
@@ -71,11 +71,18 @@ Server.prototype.start = function(dir, port) {
 
             // Redirect to directory's index.html
             function redirect() {
+                var resultURL = urlTransform(req.url, function(parsed) {
+                    parsed.pathname += '/';
+                    return parsed;
+                });
+
                 res.statusCode = 301;
-                res.setHeader('Location', req.url + '/');
-                res.end('Redirecting to ' + req.url + '/');
+                res.setHeader('Location', resultURL);
+                res.end('Redirecting to ' + resultURL);
             }
 
+            res.setHeader('X-Current-Location', req.url);
+
             // Send file
             send(req, url.parse(req.url).pathname, {
                 root: dir
@@ -106,4 +113,16 @@ Server.prototype.start = function(dir, port) {
     });
 };
 
+/**
+    urlTransform is a helper function that allows a function to transform
+    a url string in it's parsed form and returns the new url as a string
+
+    @param {String} uri
+    @param {Function} fn
+    @return {String}
+*/
+function urlTransform(uri, fn) {
+    return url.format(fn(url.parse(uri)));
+}
+
 module.exports = Server;
Add header 'X-Current-Location' to serve and fix handling of directories