- 14 Apr, 2017 2 commits
-
-
Matthew Holt authored
-
Matthew Holt authored
-
- 08 Apr, 2017 2 commits
-
-
Toby Allen authored
* Create list of index files based on extensions and check on a per config basis * remove log lines * fixed tests * made gofmt suggested change * Changes made to simplify
-
Matt Holt authored
browse: fix arbitrary ordering of directories with sort=size
-
- 03 Apr, 2017 1 commit
-
-
Peer Beckmann authored
* Respect the 'insecure_skip_verify' for the health check. * WIP: Trying to add a test. Non functional. * Fixing tests. * Creating better error messages. * Optimize two more error messages. * Move the tests into an extra function.
-
- 02 Apr, 2017 2 commits
-
-
Angel Santiago authored
* Add a shutdown function and context to staticUpstream so that running goroutines can be cancelled. Add a GetShutdownFunc to Upstream interface to expose the shutdown function to the caddy Controller for performing it on restarts. * Make fakeUpstream implement new Upstream methods. Implement new Upstream method for fakeWSUpstream as well. * Rename GetShutdownFunc to Stop(). Add a waitgroup to the staticUpstream for controlling individual object's goroutines. Add the Stop function to OnRestart and OnShutdown. Add tests for checking to see if healthchecks continue hitting a backend server after stop has been called. * Go back to using a stop channel since the context adds no additional benefit. Only register stop function for onShutdown since it's called as part of restart. * Remove assignment to atomic value * Incrementing WaitGroup outside of goroutine to avoid race condition. Loading atomic values in test. * Linting: change counter to just use the default zero value instead of setting it * Clarify Stop method comments, add comments to stop channel and waitgroup and remove out of date comment about handling stopping the proxy. Stop the ticker when the stop signal is sent
-
Toby Allen authored
* Revert "browse: sort listing by dir first (#1527)" commit 4e1229e7. * Add new browse sort order namedirfirst. Make namedirfirst default sort
-
- 01 Apr, 2017 1 commit
-
-
Matthew Holt authored
-
- 31 Mar, 2017 1 commit
-
-
Matt Holt authored
init: Make CADDYPATH equal across init scripts
-
- 29 Mar, 2017 1 commit
-
-
W-Mark Kubacki authored
Previously directories have been merely pulled to the front, and then sorted arbitrarily. That is, their order among themselves depended on the filesystem implementations. Something opaque to the visitor. This fixes said inconsistency, and implements the by-size-then-by-name order I initially intended for this.
-
- 28 Mar, 2017 3 commits
-
-
Luca Favatella authored
See also https://github.com/mholt/caddy/pull/1272#issue-191256343
-
Henrique Dias authored
* Add Event Hook plugins to DescribePlugins function * Update plugins.go * Update plugins.go
-
Henrique Dias authored
* add Hook * update hooks * remove parenthesis * Update requests
-
- 25 Mar, 2017 1 commit
-
-
Toby Allen authored
* Default Browse sort by Dir, File * Ignore temp template files * Add folder to test * unneeded chagne
-
- 23 Mar, 2017 1 commit
-
-
Matthew Holt authored
-
- 21 Mar, 2017 1 commit
-
-
Matthew Holt authored
HTTP redirects can use host-relative URLs. See discussion in #1497.
-
- 15 Mar, 2017 1 commit
-
-
ericdreeves authored
* Use helper functions in staticfiles to redirect. Previously the browse package invoked staticfiles.Redirect when redirecting clients who requested a directory but with a Request-URI that did not contain a trailing '/'. staticfiles.Redirect only used a relative URI. This change defers the decision of how to format the Location header value to the helper methods in the staticfiles package. * Update const URLPathCtxKey in browse package.
-
- 14 Mar, 2017 1 commit
-
-
Peer Beckmann authored
* Add the first policy which sends the request to the first available host * Make the error message clear. As we expect the second not first upstream host.
-
- 13 Mar, 2017 3 commits
-
-
Chao Huang authored
-
Matthew Holt authored
-
Toby Allen authored
* Added Const for CtxKeys * Move CtxKey Const declarations * Fixed tests * fix test
-
- 12 Mar, 2017 3 commits
-
-
Martin Bertschler authored
* staticfiles: add Content-Length header (closes #1479) * make linter happy, rename "Html" in identifiers to "HTML"
-
Matt Holt authored
systemd README: set mode of caddy.service to 644 instead of 744
-
Zhiming Wang authored
-
- 11 Mar, 2017 1 commit
-
-
Toby Allen authored
* Fixed issue with {path} actually {uri} * Test added for path rewrite * add in uri_escaped * added rewrite_uri and test * fix broken test. Just checks for existance of rewrite header * gitignore * Use context to store uri value * ignore .vscode * tidy up, removal of comments and invalidated tests * Remove commented out code. * added comment as requested by lint * fixed spelling mistake * clarified code with variable name * added context for uri and test * added TODO comment to move consts
-
- 10 Mar, 2017 6 commits
-
-
Matthew Holt authored
-
Leonard Hecker authored
* Fixed #1484 Fixed a nil pointer runtime error in newConnHijackerTransport, where the access to the TLSClientConfig did not check for nil values. * Minor improvement to UseInsecureTransport This prevents overwriting a possibly preexisting TLSClientConfig, even though only a single field should be changed.
-
Nathan Caza authored
* add support for listener middleware * add proxyprotocol directive * make caddy.Listener interface required * Remove tcpKeepAliveListener wrapper from Serve() This is now done in the Listen() function, along with other potential middleware.
-
ssut authored
* Fix for missing content-length header when using QUIC If request.ContentLength is set then it will be used instead of getting it from request.Header map since quic-go(lucas-clemente/quic-go@bb24be8) will not store (and pass) the Content-Length header using its header map. This fixes a potential issue where FastCGI POST requests body empty when QUIC is enabled. (#1370) * Change the data type for fastcgi contentLength to int64 quic-go uses int64 for contentLength * Fix an error for undeclared variable * Fix test for fcgiclient the data type for contentLength
-
Matt Holt authored
Log certificate location
-
Matt Holt authored
templates: Set MIME type
-
- 09 Mar, 2017 1 commit
-
-
Kurt Jung authored
* Support realms with basic authentication * Add test for default basicauth directive in which realm is not specified * Correct typo: missing space * Remove 'path' subdirective
-
- 08 Mar, 2017 1 commit
-
-
Matthew Holt authored
This could have just as easily been a tls directive property in the Caddyfile, but I figure if these challenges are being disabled, it's because of port availability or process privileges, both of which would affect all sites served by this process. The names of the flag are long but descriptive. I've never needed this but I hear of quite a few people who say they need this ability, so here it is.
-
- 07 Mar, 2017 6 commits
-
-
Matt Holt authored
httpserver: Flags to customize HTTP and HTTPS ports (including for ACME challenges)
-
Matt Holt authored
Adding ServerIP context
-
Jiri Tyr authored
-
crvv authored
If use gzip and templates at the same time, the response body will be gzipped data. And in this case, the Content-Type header won't be set by Caddy code. Then Go http package will set "Content-Type" to wrong value "application/x-gzip" which is determined by response body. So the header Contenty-Type should be set in templates middleware.
-
Matthew Holt authored
See: https://forum.caddyserver.com/t/reloading-template-files-as-they-change/1483/3?u=matt The server takes a moment to start; if USR1 is received before the instance is saved, it would panic because no instances have been saved. Instead, we just ignore the signal since no config has finished loading.
-
Matthew Holt authored
This commit removes _almost_ all instances of hard-coded ports 80 and 443 strings, and now allows the user to define what the HTTP and HTTPS ports are by the -http-port and -https-ports flags. (One instance of "80" is still hard-coded in tls.go because it cannot import httpserver to get access to the HTTP port variable. I don't suspect this will be a problem in practice, but one workaround would be to define an exported variable in the caddytls package and let the httpserver package set it as well as its own HTTPPort variable.) The port numbers required by the ACME challenges HTTP-01 and TLS-SNI-01 are hard-coded into the spec as ports 80 and 443 for good reasons, but the big question is whether they necessarily need to be the HTTP and HTTPS ports. Although the answer is probably no, they chose those ports for convenience and widest compatibility/deployability. So this commit also assumes that the "HTTP port" is necessarily the same port on which to serve the HTTP-01 challenge, and the "HTTPS port" is necessarily the same one on which to serve the TLS-SNI-01 challenge. In other words, changing the HTTP and HTTPS ports also changes the ports the challenges will be served on. If you change the HTTP and HTTPS ports, you are responsible for configuring your system to forward ports 80 and 443 properly. Closes #918 and closes #1293. Also related: #468.
-
- 06 Mar, 2017 1 commit
-
-
Toby Allen authored
-