return req
end
-def insertHeaders(req)
- req["X-Forwarded-For"] = ENV["REMOTE_ADDR"]
+def insertHeaders(req, ffHeader)
+ if ffHeader
+ req["X-Forwarded-For"] = ENV["REMOTE_ADDR"]
+ end
req["Host"] = ENV["HTTP_HOST"]
req["Cookie"] = ENV["HTTP_COOKIE"]
req["Referer"] = ENV["HTTP_REFERER"]
end
def printResult(res)
- res.each_capitalized do |key, value|
- print "#{key}: #{value}\r\n"
+ if res.code != "200"
+ res["Status"] = "#{res.code} #{res.message}"
+ end
+ res.each_capitalized_name do |key|
+ res.get_fields(key).each do |value|
+ print "#{key}: #{value}\r\n"
+ end
end
print "\r\n"
print res.body
}
end
-def proxyTo(basePath)
+def proxyTo(basePath, ffHeader=True)
host, port, path = getParams(basePath)
req = createRequest(ENV["REQUEST_METHOD"], path)
- insertHeaders(req)
+ insertHeaders(req, ffHeader)
res = doRequest(req, host, port)
printResult(res)
end