caddy/middleware/proxy
William Bezuidenhout e2234497b7 proxy: Add, remove, or replace upstream and downstream headers (closes #666) (PR #788)
* Overwrite proxy headers based on directive

Headers of the request sent by the proxy upstream can now be modified in
the following way:

Prefix header with `+`: Header will be added if it doesn't exist
otherwise, the values will be merge
Prefix header with `-': Header will be removed
No prefix: Header will be replaced with given value

* Add missing formating directive reported by go vet

* Overwrite up/down stream proxy headers

Add Up/DownStreamHeaders to UpstreamHost

Split `proxy_header` option in `proxy` directive into `header_upstream`
and `header_downstream`. By splitting into two, it makes it clear in
what direction the given headers must be applied.

`proxy_header` can still be used (to maintain backward compatability)
but its assumed to be `header_upstream`

Response headers received by the reverse proxy from the upstream host
are updated according the `header_downstream` rules.
The update occurs through a func given to the reverse proxy, which is
applied once a response is received.

Headers (for upstream and downstream) can now be modified in
the following way:

Prefix header with `+`: Header will be added if it doesn't exist
otherwise, the values will be merge
Prefix header with `-': Header will be removed
No prefix: Header will be replaced with given value

Updated branch with changes from master

* minor refactor to make intent clearer

* Make Up/Down stream headers naming consistent

* Fix error descriptions to be more clear

* Fix lint issue
2016-04-30 13:41:30 -06:00
..
policy_test.go Add common method for checking host availability 2016-03-10 14:42:19 +00:00
policy.go Add common method for checking host availability 2016-03-10 14:42:19 +00:00
proxy_test.go proxy: Add, remove, or replace upstream and downstream headers (closes #666) (PR #788) 2016-04-30 13:41:30 -06:00
proxy.go proxy: Add, remove, or replace upstream and downstream headers (closes #666) (PR #788) 2016-04-30 13:41:30 -06:00
reverseproxy.go proxy: Add, remove, or replace upstream and downstream headers (closes #666) (PR #788) 2016-04-30 13:41:30 -06:00
upstream_test.go Add except to FastCGI. Minor refactor in proxy. 2016-03-20 08:02:17 +01:00
upstream.go proxy: Add, remove, or replace upstream and downstream headers (closes #666) (PR #788) 2016-04-30 13:41:30 -06:00