caddy/modules/caddyhttp
Matthew Holt 260982b2df reverse_proxy: Allow use of URL to specify scheme
This makes it more convenient to configure quick proxies that use HTTPS
but also introduces a lot of logical complexity. We have to do a lot of
verification for consistency and errors.

Path and query string is not supported (i.e. no rewriting).

Scheme and port can be inferred from each other if HTTP(S)/80/443.
If omitted, defaults to HTTP.

Any explicit transport config must be consistent with the upstream
schemes, and the upstream schemes must all match too.

But, this change allows a config that used to require this:

    reverse_proxy example.com:443 {
        transport http {
            tls
        }
    }

to be reduced to this:

    reverse_proxy https://example.com

which is really nice syntactic sugar (and is reminiscent of Caddy 1).
2020-02-27 21:04:28 -07:00
..
caddyauth basicauth: default hash to bcrypt (#3050) 2020-02-17 12:19:59 -07:00
encode Fix typos (#3087) 2020-02-27 19:30:48 -07:00
fileserver Fix typos (#3087) 2020-02-27 19:30:48 -07:00
headers header: caddyfile: Defer header operations for deletions or manually 2020-02-04 11:05:32 -07:00
httpcache Improve godocs all around 2019-12-23 12:45:35 -07:00
requestbody Improve godocs all around 2019-12-23 12:45:35 -07:00
reverseproxy reverse_proxy: Allow use of URL to specify scheme 2020-02-27 21:04:28 -07:00
rewrite rewrite: Prepend "/" if missing from strip path prefix 2020-01-22 09:36:05 -07:00
standard Remove Starlark, for now 2020-02-06 18:46:52 -07:00
templates Fix typos (#3087) 2020-02-27 19:30:48 -07:00
autohttps.go tls: Avoid duplication AutomationPolicies for large quantities of names 2020-02-14 11:14:52 -07:00
caddyhttp.go It might be HTTP->HTTPS in the comment (#3086) 2020-02-27 00:50:36 -05:00
errors.go http: Change routes to sequential matcher evaluation (#2967) 2020-01-09 10:00:13 -07:00
marshalers.go http: Fix ciphersuite logging 2020-01-16 15:44:49 -06:00
matchers.go Fix typos (#3087) 2020-02-27 19:30:48 -07:00
matchers_test.go caddyhttp: Fixes for header and header_regexp directives (#3061) 2020-02-20 10:55:47 -07:00
replacer.go Expose TLS placeholders (#2982) 2020-02-25 19:22:50 -07:00
replacer_test.go Expose TLS placeholders (#2982) 2020-02-25 19:22:50 -07:00
responsewriter.go http: Always set status code via response recorder 2020-01-08 18:37:41 -07:00
routes.go httpcaddyfile: Fix nested blocks; add handle directive; refactor 2020-01-16 17:08:52 -07:00
server.go Expose TLS placeholders (#2982) 2020-02-25 19:22:50 -07:00
staticerror.go Export Replacer and use concrete type instead of interface 2019-12-29 13:12:52 -07:00
staticresp.go httpcaddyfile: Update directive docs; put root after rewrite 2020-01-22 09:32:38 -07:00
staticresp_test.go Implement config adapters and beginning of Caddyfile adapter 2019-08-09 12:05:47 -06:00
subroute.go http: Fix subroutes, ensure that next handlers can still be called 2020-01-12 13:39:32 -07:00
vars.go v2: Implement RegExp Vars Matcher (#2997) 2020-02-08 12:26:31 -07:00