mirror of
https://github.com/warp-tech/warpgate.git
synced 2024-09-20 06:46:17 +08:00
fixed #747 - don't include port in x-forwarded-for
This commit is contained in:
parent
83be017974
commit
f13a22f4d0
|
@ -207,11 +207,14 @@ fn copy_server_request<B: SomeRequestBuilder>(req: &Request, mut target: B) -> B
|
|||
|
||||
fn inject_forwarding_headers<B: SomeRequestBuilder>(req: &Request, mut target: B) -> Result<B> {
|
||||
if let Some(host) = req.headers().get(http::header::HOST) {
|
||||
target = target.header(X_FORWARDED_HOST.clone(), host.to_str()?.to_string());
|
||||
target = target.header(
|
||||
X_FORWARDED_HOST.clone(),
|
||||
host.to_str()?.split(':').next().unwrap().to_string(),
|
||||
);
|
||||
}
|
||||
target = target.header(X_FORWARDED_PROTO.clone(), req.scheme().as_str().to_owned());
|
||||
if let Some(addr) = req.remote_addr().as_socket_addr() {
|
||||
target = target.header(X_FORWARDED_FOR.clone(), addr.to_string());
|
||||
target = target.header(X_FORWARDED_FOR.clone(), addr.ip().to_string());
|
||||
}
|
||||
Ok(target)
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue