- 13 Jan, 2016 2 commits
-
-
Matthew Holt authored
Implements "on-demand TLS" as I call it, which means obtaining TLS certificates on-the-fly during TLS handshakes if a certificate for the requested hostname is not already available. Only the first request for a new hostname will experience higher latency; subsequent requests will get the new certificates right out of memory. Code still needs lots of cleanup but the feature is basically working.
-
Matthew Holt authored
I've built this on Go 1.6 beta 1 and made some changes to be more compatible. Namely, I removed the use of the /x/net/http2 package and let net/http enable h2 by default; updated the way h2 is disabled (if the user requires it); moved TLS_FALLBACK_SCSV to the front of the cipher suites list (all values not accepted by http2 must go after those allowed by it); removed the NextProto default of http/1.1; set the http.Server.TLSConfig value to the TLS config used by the listener (we left it nil before, but this prevents automatic enabling of h2). It is very likely there is more to do, but at least already Caddy uses HTTP/2 when built with Go 1.6.
-
- 12 Jan, 2016 6 commits
-
-
Matthew Holt authored
-
Matthew Holt authored
-
Matthew Holt authored
-
Matthew Holt authored
Also only set custom address if alternate port is specified (rather than using a blank address; just cleaner this way)
-
Matt Holt authored
gzip: Fix for wrong content-type when templates is used.
-
Abiola Ibrahim authored
-
- 11 Jan, 2016 5 commits
-
-
Matthew Holt authored
-
Matthew Holt authored
This change fixes the scenario where you reload the config and it tries to obtain a cert from the ACME server, but no email address is found or terms have not been agreed to in-process. This is unfortunate but it should not stop the server from reloading, so we assume empty email address in this case.
-
Matthew Holt authored
-
Matthew Holt authored
This prevents serving HTTPS over port 80 or HTTP over 443. It's confusing and we don't allow it.
-
Matthew Holt authored
It is unexpected to serve localhost on port 443 or any server on 443 if TLS is disabled, even if the port is blank. Also don't warn about how to force TLS on the HTTP port.
-
- 10 Jan, 2016 2 commits
-
-
Matthew Holt authored
The docs link to this structure and all its methods related to the browse template; keeping them together makes it possible to link to the whole block of code that is relevant.
-
Matthew Holt authored
-
- 09 Jan, 2016 2 commits
-
-
Matthew Holt authored
-
Matthew Holt authored
-
- 08 Jan, 2016 6 commits
-
-
Matthew Holt authored
Doesn't test the SkipInsecureVerify proxy setting, but that can be done at another time.
-
Matthew Holt authored
-
Matthew Holt authored
-
Matthew Holt authored
-
Matthew Holt authored
-
Matthew Holt authored
-
- 07 Jan, 2016 5 commits
-
-
Matthew Holt authored
-
Matthew Holt authored
# Conflicts: # caddy/letsencrypt/letsencrypt.go # caddy/letsencrypt/letsencrypt_test.go
-
Matthew Holt authored
Also make sure column header cells don't wrap
-
Matt Holt authored
rewrite: not_has, not_match, multiple to, and status codes
-
Matt Holt authored
letsencrypt: Make plaintext redirect hosts honor the Bind settings
-
- 06 Jan, 2016 2 commits
-
-
Matthew Holt authored
-
Matthew Holt authored
Makes restarts cleaner and improves configuration usability related to the tls directive
-
- 05 Jan, 2016 1 commit
-
-
Matthew Holt authored
-
- 04 Jan, 2016 3 commits
-
-
Matthew Holt authored
# Conflicts: # caddy/letsencrypt/letsencrypt.go
-
Ben Schumacher authored
-
Matthew Holt authored
Before, Caddy couldn't support graceful (zero-downtime) restarts when the reloaded Caddyfile had a host in it that was elligible for a LE certificate because the port was already in use. This commit makes it possible to do zero-downtime reloads and issue certificates for new hosts that need it. Supports only http-01 challenge at this time. OCSP stapling is improved in that it updates before the expiration time when the validity window has shifted forward. See 30c94908. Before it only used to update when the status changed. This commit also sets the user agent for Let's Encrypt requests with a string containing "Caddy".
-
- 03 Jan, 2016 3 commits
-
-
Matthew Holt authored
-
Matthew Holt authored
-
Matthew Holt authored
By separating scheme and port at the parser, we are able to set the port appropriately and also keep the semantics of the scheme being specified by the user later on. The parser also stores an address' original input. Also, the config refactor makes it possible to partially load a config - valuable for determining which ones will need Let's Encrypt integration turned on during a restart.
-
- 02 Jan, 2016 1 commit
-
-
Abiola Ibrahim authored
-
- 01 Jan, 2016 1 commit
-
-
Abiola Ibrahim authored
-
- 31 Dec, 2015 1 commit
-
-
Abiola Ibrahim authored
-