Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-12-23 | Improve godocs all around | Matthew Holt | |
These will be used in the new automated documentation system | |||
2019-12-17 | rewrite: Attempt query string fix (#2891) | Matthew Holt | |
2019-12-17 | http: query and query_string placeholders should use RawQuery, probably | Matthew Holt | |
2019-12-17 | http: Patch path matcher to ignore dots and spaces (#2917) | Matthew Holt | |
(Try saying "patch path match" ten times fast) | |||
2019-12-12 | rewrite: strip_prefix, strip_suffix, and uri_replace dirs (closes #2906) | Matthew Holt | |
2019-12-12 | try_files, rewrite: allow query string in try_files (fix #2891) | Matthew Holt | |
Also some minor cleanup/improvements discovered along the way | |||
2019-12-12 | rewrite: query string enh.; substring replace; add tests (see #2891) | Matthew Holt | |
2019-12-12 | Minor improvements; comments and shorter placeholders & module IDs | Matthew Holt | |
2019-12-10 | v2: Module documentation; refactor LoadModule(); new caddy struct tags (#2924) | Matt Holt | |
This commit goes a long way toward making automated documentation of Caddy config and Caddy modules possible. It's a broad, sweeping change, but mostly internal. It allows us to automatically generate docs for all Caddy modules (including future third-party ones) and make them viewable on a web page; it also doubles as godoc comments. As such, this commit makes significant progress in migrating the docs from our temporary wiki page toward our new website which is still under construction. With this change, all host modules will use ctx.LoadModule() and pass in both the struct pointer and the field name as a string. This allows the reflect package to read the struct tag from that field so that it can get the necessary information like the module namespace and the inline key. This has the nice side-effect of unifying the code and documentation. It also simplifies module loading, and handles several variations on field types for raw module fields (i.e. variations on json.RawMessage, such as arrays and maps). I also renamed ModuleInfo.Name -> ModuleInfo.ID, to make it clear that the ID is the "full name" which includes both the module namespace and the name. This clarity is helpful when describing module hierarchy. As of this change, Caddy modules are no longer an experimental design. I think the architecture is good enough to go forward. | |||
2019-12-06 | Use "IsUnixNetwork" function instead of repeating the logic | Matthew Holt | |
2019-12-04 | Fix misspellings (#2908) | lu4p | |
2019-11-30 | Merge branch 'v2' of ssh://github.com/caddyserver/caddy into v2 | Matthew Holt | |
2019-11-30 | http: Don't listen 1 port beyond port range | Matthew Holt | |
2019-11-29 | v2: fixes query matcher parsing (#2901) | Mark Sargent | |
* fixes query matcher parsing * return correct argument error when parsing query matcher | |||
2019-11-29 | http: Shorten regexp matcher placeholders; allow "=/" for simple matcher | Matthew Holt | |
2019-11-28 | http: path matcher supports exact matching with = prefix | Matthew Holt | |
2019-11-27 | http: header matcher supports fast prefix and suffix matching (#2888) | Matthew Holt | |
2019-11-27 | reverse_proxy: Add flush_interval to caddyfile syntax (#1460) | Matthew Holt | |
Also add godoc for Caddyfile syntax for file_server | |||
2019-11-18 | reverse_proxy: Fix invalid argument to Intn in RandomChoice selection | Matthew Holt | |
2019-11-16 | file_server: Use HTTPS port when a qualifying domain is specified | Matthew Holt | |
Also little comment cleanups | |||
2019-11-15 | file_server: Optional pass_thru mode | Matthew Holt | |
If enabled, will call the next handler in the chain instead of returning a 404. | |||
2019-11-15 | reverse_proxy: Allow buffering of client requests | Matthew Holt | |
This is a bad idea, but some backends apparently require it. See discussion in #176. | |||
2019-11-15 | http: Only enable access logs if configured | Matthew Holt | |
2019-11-15 | cmd: Disable admin endpoint for file-server and reverse-proxy commands | Matthew Holt | |
This makes it easier to use multiple instances on the same machine | |||
2019-11-15 | Minor cleanups | Matthew Holt | |
2019-11-15 | http: Make path matcher case-insensitive | Matthew Holt | |
Adds tests for both the path matcher and host matcher for case insensitivity. If case sensitivity is required for the path, a regexp matcher can be used instead. This is the v2 equivalent fix of PR #2882. | |||
2019-11-11 | core: Use port ranges to avoid OOM with bad inputs (#2859) | Mohammed Al Sahaf | |
* fix OOM issue caught by fuzzing * use ParsedAddress as the struct name for the result of ParseNetworkAddress * simplify code using the ParsedAddress type * minor cleanups | |||
2019-11-11 | http: Add response headers to access logs | Matthew Holt | |
2019-11-11 | http: Use permanent redirects for HTTP->HTTPS | Matthew Holt | |
2019-11-06 | reverse_proxy: Fix NTLM auth detection | Matthew Holt | |
D'oh. Got mixed up in a refactoring. | |||
2019-11-05 | reverse_proxy: Add support for NTLM | Matthew Holt | |
2019-11-05 | http: Eliminate allocation in cloneURL; add RemoteAddr to origRequest | Matthew Holt | |
2019-11-05 | reverse_proxy: Make HTTP versions configurable, don't set NextProtos | Matthew Holt | |
2019-11-04 | Prepare for beta 9 tag | Matthew Holt | |
2019-11-04 | reverse_proxy: Add UnmarshalCaddyfile for random_choose selection policy | Matthew Holt | |
Also allow caddy.Duration to be given integer values which are treated like regular time.Duration values (nanoseconds). Fixes #2856 | |||
2019-11-04 | reverse_proxy: Add port to upstream address if only implied in scheme | Matthew Holt | |
2019-11-04 | http: Only log handler errors >= 500 | Matthew Holt | |
Errors in the 4xx range are client errors, and they don't need to be entered into the server's error logs. 4xx errors are still recorded in the access logs at the error level. | |||
2019-11-04 | cmd: Move module imports into standard packages | Matthew Holt | |
This makes it easier to make "standard" caddy builds, since you'll only need to add a single import to get all of Caddy's standard modules. There is a package for all of Caddy's standard modules (modules/standard) and a package for the HTTP app's standard modules only (modules/caddyhttp/standard). We still need to decide which of these, if not all of them, should be kept in the standard build. Those which aren't should be moved out of this repo. See #2780. | |||
2019-10-31 | http: Ensure server loggers are not nil (fixes #2849) | Matthew Holt | |
2019-10-31 | reverse_proxy: Fix panic for some CLI flag values (closes #2848) | Matthew Holt | |
2019-10-30 | http: Avoid panic if handler errors lack underlying error value | Matthew Holt | |
Fixes #2845 | |||
2019-10-30 | auth: Clean up basicauth | Matthew Holt | |
2019-10-29 | reverse_proxy: Structured logs | Matthew Holt | |
2019-10-29 | Remove unused fields from HandlerError | Matthew Holt | |
2019-10-29 | proxy: Forgot to commit import | Matthew Holt | |
2019-10-29 | caddyhttp: Fix nil pointer dereference | Matthew Holt | |
2019-10-29 | proxy: Enable HTTP/2 on transport to backend | Matthew Holt | |
2019-10-28 | cache: Make peer addresses configurable | Matthew Holt | |
2019-10-28 | caddyhttp: Minor cleanup and fix nil pointer deref in caddyfile adapter | Matthew Holt | |
2019-10-28 | v2: Logging! (#2831) | Matt Holt | |
* logging: Initial implementation * logging: More encoder formats, better defaults * logging: Fix repetition bug with FilterEncoder; add more presets * logging: DiscardWriter; delete or no-op logs that discard their output * logging: Add http.handlers.log module; enhance Replacer methods The Replacer interface has new methods to customize how to handle empty or unrecognized placeholders. Closes #2815. * logging: Overhaul HTTP logging, fix bugs, improve filtering, etc. * logging: General cleanup, begin transitioning to using new loggers * Fixes after merge conflict |