Hello,
Currently, 'redirect' works by using 'host', which grabs the "Host" http header value. This works ok if the server is running on port 80, however if it is running on another port the value of "Host" is both the hostname and port, so for example (redirect "/foobar" :port 4243) would redirect to http://localhost:4242:4243/foobar if the first request came in to localhost:4242. The attached patch implements a new function on request objects, server-hostname, which returns just the hostname portion of the "Host" header value, and makes redirect use that.
Vladimir