ErrLookup › caddyserver/caddy
caddyserver/caddy
Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS · Go · 217 source files
Analyzed at 50e54ee279 on 2026-08-15. 757 documented errors.
| Code / Message | Type | Severity | Tags |
|---|---|---|---|
| WebSocket connections aren't allowed. | http | error | caddy, caddytls, stek, storage, locking, cluster |
| Disabling same-origin restrictions is not allowed. | http | error | caddy, caddytls, stek, storage, first-run |
| Buggy browser is sending null Origin header. | http | error | caddy, caddytls, stek, storage, corruption |
| syntax error: unexpected token '%s', expecting '%s', at %s:% | validation | warning | caddy, caddytls, stek, rotation, storage |
| --config is required | console | error | caddy, caddytls, ech, modules, dns, xcaddy |
| --input is required | console | error | caddy, caddytls, ech, storage, provisioning |
| --output is required | console | warning | caddy, caddytls, ech, rotation, storage, cluster |
| cannot reuse socket %v: unix socket is already in use by ano | console | warning | caddy, caddytls, ech, rotation, storage |
| missing 'req' argument | validation | warning | caddy, caddytls, ech, json, rotation |
| the 'forwarded' option is no longer supported; use the 'clie | validation | error | caddy, caddytls, ech, dns, serialization |
| unsupported type | validation | warning | caddy, caddytls, ech, json, publication |
| protocol argument was not a string | validation | error | caddy, caddytls, ech, storage, cleanup, read-only |
| %s is invalid policy | validation | error | caddy, caddytls, ech, storage, cleanup |
ErrInvalidSplitPath split path contains non-ASCII characters | validation | error | caddy, caddytls, ech, storage, corruption, cleanup |
| rfc9112 forbids empty Host | http | error | caddy, caddytls, ech, storage, metadata, cleanup |
| private key does not match issuer public key | validation | error | caddy, caddytls, ech, storage, json, corruption, cleanup |
| invalid action type | validation | error | logging, configuration, validation, caddyfile |
| no metrics registry found | validation | error | metrics, admin-api, configuration, provisioning |
| no metrics registry found | validation | error | metrics, provisioning, testing, embedded |
| provisioning admin router module %s: %v | validation | error | admin-api, provisioning, plugins, startup |
| loading identity issuer modules: %s | validation | error | admin-api, identity, modules, configuration |
| access control %d public key %d: parsing base64 certificate | validation | error | admin-api, remote-admin, certificates, base64, configuration |
| cannot enable remote admin without a certificate cache; conf | validation | error | admin-api, remote-admin, identity, configuration, tls |
| no server identity configured | console | error | admin-api, identity, tls-client, modules |
| no identifiers configured | console | error | admin-api, identity, configuration, validation |
| no admin server | console | warning | admin-api, internal, shutdown, configuration |
| stopping admin server: %ds timeout | console | warning | admin-api, shutdown, timeout, http |
| shutting down admin server: %v | console | warning | admin-api, shutdown, http, timeout |
| request path is missing object ID | http | error | caddy, admin-api, http, routing, bad-request |
| malformed object path | http | error | caddy, admin-api, http, routing, bad-request |
| unknown object ID '%s' | http | error | caddy, admin-api, http, not-found, config |
| method not allowed | http | error | caddy, admin-api, http, method-not-allowed, lifecycle |
| decoding request body: %w, at offset %d | http | error | caddy, admin-api, json, bad-request, config |
| decoding request body: %w | http | error | caddy, admin-api, json, bad-request, config |
| no traversable path | http | error | caddy, admin-api, config, path, internal |
| path missing | http | warning | caddy, admin-api, config, internal, defensive |
| [%s] invalid array index '%s': %v | http | error | caddy, admin-api, config, path, bad-request |
| [%s] array index out of bounds: %s | http | error | caddy, admin-api, config, array, bad-request |
| encoding config: %v | http | warning | caddy, admin-api, json, encoding, io |
| final element is not an array | http | error | caddy, admin-api, json, config, bad-request |
| [%s] key already exists: %s | http | error | caddy, admin-api, config, conflict, http-409 |
| [%s] key does not exist: %s | http | error | caddy, admin-api, config, not-found, http-404 |
| [/%s] invalid array index '%s': %v | http | error | caddy, admin-api, config, path, array, bad-request |
| [/%s] array index out of bounds: %s | http | error | caddy, admin-api, config, array, bad-request |
| invalid traversal path at: %s | http | error | caddy, admin-api, config, path, bad-request |
| replacing listen address: %v | console | error | caddy, admin-api, config, placeholders, environment |
| parsing listener address: %v | console | error | caddy, admin-api, config, network-address, validation |
| must be exactly one listener address; cannot listen on: %s | console | error | caddy, admin-api, config, ports, validation |
| method not allowed | http | error | caddy, admin-api, http, method-not-allowed |
| malformed If-Match header; expect quoted string | http | error | caddy, admin-api, http, if-match, etag, validation |
| malformed If-Match header; expect format \"<path> <hash>\" | http | error | caddy, admin-api, http, if-match, etag, validation |
| encoding new config: %v | http | error | caddy, admin-api, json, serialization, plugins |
| %v; additionally, restoring old config: %v | http | error | caddy, admin-api, config, error-recovery, id-index |
| indexing config: %v | http | error | caddy, admin-api, config, id-index, validation |
| loading new config: %v | http | error | caddy, admin-api, config, provisioning, reload |
| %s: %s field must be a string or number | http | error | caddy, admin-api, config, id-index, validation |
| duplicate ID '%s' found at %s and %s | http | error | caddy, admin-api, config, id-index, duplicate, validation |
| recursive config loading detected: pulled configs cannot pul | http | error | caddy, admin-api, config, remote-config, loop-prevention |
| %v; additionally, aborting app %s: %v | http | error | caddy, apps, lifecycle, shutdown, compound-error |
| %s app module: start: %v | http | error | caddy, apps, startup, bind, lifecycle |
| loading storage module: %v | http | error | caddy, storage, modules, config, provisioning |
| creating storage value: %v | http | error | caddy, storage, certmagic, connection, modules |
| starting caddy administration endpoint: %v | http | error | caddy, admin-api, bind, startup, config |
| provisioning remote admin endpoint: %v | http | error | admin-endpoint, identity, pki, startup |
| loading config loader module: %s | http | error | dynamic-config, modules, admin, startup |
| loading dynamic config from %T: %v | http | error | dynamic-config, config-loader, startup, network |
| parsing duration: input string too long | validation | error | duration, parse, input-validation |
| %w, at %s:%d import chain ['%s'] | validation | error | caddyfile, parse-error, imports, diagnostics |
| %w, at %s:%d | validation | error | caddyfile, parse-error, diagnostics |
| a cycle of imports exists between %s and %s | validation | error | caddyfile, imports, cycle, config |
| incomplete heredoc <<%s on line #%d, expected ending marker | validation | error | caddyfile, heredoc, lexer |
| missing opening heredoc marker on line #%d; must contain onl | validation | error | caddyfile, heredoc, lexer |
| too many '<' for heredoc on line #%d; only use two, for exam | validation | error | caddyfile, heredoc, lexer |
| heredoc marker on line #%d must contain only alphanumeric ch | validation | error | caddyfile, heredoc, lexer |
| mismatched leading whitespace in heredoc <<%s on line #%d [% | validation | error | caddyfile, heredoc, whitespace, lexer |
| parsing key: %v | validation | error | caddyfile, site-address, parse |
| server block %d, key %d (%s): determining listener address: | validation | error | caddyfile, site-address, bind, listener |
| the scheme wss:// is only supported in browsers; use https:/ | validation | error | caddyfile, websocket, site-address, scheme |
| the scheme ws:// is only supported in browsers; use http:// | validation | error | caddyfile, websocket, site-address, scheme |
| unsupported URL scheme %s:// | validation | error | caddyfile, site-address, scheme |
| [%s] scheme and port violate convention | validation | error | caddyfile, site-address, port, scheme, convention |
| splitting listener address: %v | validation | error | caddyfile, bind, listener, network-address |
| parsing network address: %v | validation | error | |
| invalid port '%s': %v | validation | error | |
| port %d is out of range | validation | error | |
| %s:%d: cannot define a matcher outside of a site block: '%s' | validation | error | |
| %s:%d: parsed '%s' as a site address, but it is a known dire | validation | error | |
| server block without any key is global configuration, and if | validation | error | |
| %s:%d: unrecognized directive: %s | validation | error | |
| parsing caddyfile tokens for '%s': %v | validation | error | |
| %s:%d: unrecognized global option: %s | validation | error | |
| unexpected type from 'servers' global options: %T | validation | error | |
| unexpected type from 'log' global options: %T | validation | error | |
| unexpected type from 'default_bind' global options: %T | validation | error | |
| cannot have 'servers' global options with duplicate listener | validation | error | |
| cannot have duplicate named_routes: %s | validation | error | |
| ambiguous site definition: %s | validation | error | |
| cannot invoke named route '%s', which was not defined | validation | error | |
| server block %v: compiling matcher sets: %v | validation | error | |
| config for a listener wrapper did not provide a value that i | validation | error | |
| config for a packet conn wrapper did not provide a value tha | validation | error | |
| consolidating TLS connection policies for server %d: %v | validation | error | caddy, tls, config, caddyfile |
| applying global server options: %v | validation | error | caddy, caddyfile, global-options, config |
| server listening on %v is configured for HTTPS and cannot na | validation | error | caddy, caddyfile, http, https, listening |
| %s (try specifying https:// in the address) | validation | error | caddy, caddyfile, https, address |
| server listening on %v is HTTP, but attempts to configure TL | validation | error | caddy, caddyfile, tls, http, conflict |
| server listening on %v is configured for HTTP and cannot nat | validation | error | caddy, caddyfile, http, https, listening |
| recombining SNI matchers: %v | validation | error | caddy, tls, json, internal |
| two policies with same match criteria have conflicting ALPN: | validation | error | caddy, tls, alpn, caddyfile, conflict |
| two policies with same match criteria have conflicting ciphe | validation | error | caddy, tls, ciphers, caddyfile, conflict |
| two policies with same match criteria have conflicting clien | validation | error | caddy, tls, mtls, client-auth, caddyfile |
| two policies with same match criteria have conflicting curve | validation | error | caddy, tls, curves, caddyfile, conflict |
| two policies with same match criteria have conflicting defau | validation | error | caddy, tls, sni, caddyfile, conflict |
| two policies with same match criteria have conflicting fallb | validation | error | caddy, tls, sni, caddyfile, conflict |
| two policies with same match criteria have conflicting min p | validation | error | caddy, tls, protocols, caddyfile, conflict |
| two policies with same match criteria have conflicting max p | validation | error | caddy, tls, protocols, caddyfile, conflict |
| two policies with same match criteria have conflicting cert | validation | error | caddy, tls, certificates, caddyfile, conflict |
| directive '%s' is not an ordered HTTP handler, so it cannot | validation | error | caddy, caddyfile, directives, ordering, plugins |
| unrecognized matcher name: %+v | validation | error | caddy, caddyfile, matchers, typo |
| server block %v: %v | validation | error | caddy, caddyfile, matchers, json |
| matcher is defined more than once: %s | validation | error | caddy, caddyfile, matchers, duplicate, snippets |
| getting matcher module '%s': %v | validation | error | caddyfile, matcher, module-registration, config-adapt |
| matcher module '%s' is not a Caddyfile unmarshaler | validation | error | caddyfile, matcher, plugin, interface-mismatch |
| matcher module '%s' is not a request matcher | validation | error | caddyfile, matcher, plugin, interface-mismatch |
| marshaling matcher set %#v: %v | validation | error | caddyfile, json, matcher, plugin |
| module %s (%T) is not a listener wrapper | validation | error | caddyfile, server-options, listener-wrapper, plugin |
| module %s (%T) is not a packet conn wrapper | validation | error | caddyfile, server-options, packet-conn, quic, plugin |
| module %s (%T) is not an IP range source | validation | error | caddyfile, trusted-proxies, ip-source, plugin |
| cannot use duplicate server name '%s' | validation | error | caddyfile, server-options, duplicate-name, imports |
| automation policy from site block is also default/catch-all | validation | error | caddyfile, tls, automation-policy, site-block |
| subject does not qualify for certificate: '%s' | validation | error | caddyfile, tls, certmagic, hostname-validation |
| filling in global issuer defaults for AP %d, issuer %d: %v | validation | error | caddyfile, tls, acme, dns-challenge, global-options |
| hostname appears in more than one automation policy, making | validation | error | caddyfile, tls, automation-policy, duplicate-hostname |
| acme_dns specified without DNS provider config, but no provi | validation | error | caddyfile, tls, acme, dns-challenge, global-options |
| global options are ambiguous: local_certs is confusing when | validation | error | caddyfile, tls, global-options, ambiguous-config |
| filling in global issuer defaults for issuer %d: %v | validation | error | caddyfile, tls, acme, global-options, dns-challenge |
| server responded with HTTP %d | console | error | config-loader, http, network, status-code |
| problem calling http loader url: %v | console | error | config-loader, http, network, tls, dns |
| bad response status code from http loader url: %v | console | error | config-loader, http, status-code, server-error |
| getting server identity credentials: %v | console | error | config-loader, tls, pki, client-certificate |
| failed reading ca cert: %v | console | error | config-loader, tls, file-permissions, ca-certificate |
| reading request body: %v | http | error | admin-api, network, request-body, http-400 |
| loading config: %v | http | error | admin-api, config, validation, http-400 |
| invalid Content-Type: %v | http | error | admin-api, http-headers, content-type, http-400 |
| malformed Content-Type | validation | warning | admin-api, http-headers, content-type, defensive-check |
| unrecognized config adapter '%s' | validation | error | admin-api, config-adapter, content-type, http-400 |
| adapting config using %s adapter: %v | validation | error | admin-api, caddyfile, config-adapter, http-400 |
| reading envfile flag: %v | console | error | cli, flags, caddy-start, env |
| opening listener for success confirmation: %v | console | error | cli, caddy-start, network, loopback, resource-limits |
| creating stdin pipe: %v | console | error | cli, caddy-start, process, resource-limits |
| generating random confirmation bytes: %v | console | error | cli, caddy-start, crypto-rand, platform |
| starting caddy process: %v | console | error | cli, caddy-start, process, exec, containers |
| caddy process exited with error: %v | console | critical | cli, caddy-start, config, ports, startup |
| listen on 127.0.0.1:0: %v; listen on [::1]:0: %v | console | error | cli, caddy-start, network, loopback, resource-limits |
| loading initial config: %v | console | critical | cli, caddy-run, config, startup, validation |
| reading confirmation bytes from stdin: %v | console | error | cli, caddy-run, pingback, stdin, internal |
| dialing confirmation address: %v | console | error | cli, caddy-run, pingback, network, loopback |
| writing confirmation bytes to %s: %v | console | error | cli, caddy-run, pingback, network, internal |
| couldn't determine admin API address: %v | console | error | |
| no config file to load | console | error | |
| sending configuration to instance: %v | console | error | |
| no build information | console | error | |
| input file required when there is no Caddyfile in current di | console | error | |
| adapter name is required (use --adapt flag or leave unspecif | console | error | |
| unrecognized config adapter: %s | console | error | |
| reading input file: %v | console | error | |
| decoding config: %v | console | error | |
| validation: %v | console | error | |
| fmt does not support multiple files %s %s | console | error | |
| reading stdin: %v | console | error | |
| overwriting formatted file: %v | console | error | |
| %s:%d: Caddyfile input is not formatted; Tip: use '--overwri | console | error | |
| loading additional environment variables: %v | console | error | |
| invalid admin address %s: %v | console | error | cli, admin-api, network-address, configuration |
| making request: %v | console | error | cli, admin-api, http-client, internal |
| performing request: %v | console | error | cli, admin-api, network, connection-refused |
| HTTP %d: reading error message: %v | console | error | cli, admin-api, transient, io |
| caddy responded with error: HTTP %d: %s | http | error | cli, admin-api, http-status, configuration |
| no config file to load; either use --config flag or ensure C | console | error | cli, admin-api, configuration, file-not-found |
| unmarshaling admin listener address from config: %v | console | error | cli, configuration, json, parsing |
| checking if default Caddyfile exists: %v | console | error | cli, filesystem, permissions |
| designated output directory and specified section are requir | console | error | cli, manpage, missing-flag |
| unrecognized shell: %s | console | error | cli, shell-completion, invalid-argument |
| wrong confirmation: %x | console | error | cli, process-lifecycle, startup, internal |
| cannot adapt config without config file (use --config) | console | error | cli, configuration, missing-flag, adapter |
| reading config from stdin: %v | console | error | cli, configuration, stdin, io |
| reading config from file: %v | console | error | cli, configuration, file-not-found, permissions |
| reading default Caddyfile: %v | console | error | cli, configuration, permissions, filesystem |
| unrecognized config adapter: %s | console | error | cli, adapter, plugin, invalid-argument |
| adapting config using %s: %v | console | error | cli, caddyfile, adapter, syntax-error, configuration |
| config is not valid JSON: %w, at offset %d; did you mean to | console | error | cli, configuration, json, syntax-error |
| config is not valid JSON: %w; did you mean to use a config a | console | error | cli, configuration, json, type-error |
| reading environment file: %v | console | error | cli, environment, file-not-found, permissions |
| parsing environment file: %v | console | error | caddy, env-file, configuration, cli, parsing |
| setting environment variables: %v | console | error | caddy, env-file, os, environment, cli |
| can't parse line %d; line should be in KEY=VALUE format | console | error | caddy, env-file, parsing, configuration |
| missing or empty key on line %d | console | error | caddy, env-file, parsing, configuration |
| invalid key on line %d: contains whitespace: %s | console | error | caddy, env-file, parsing, configuration |
| invalid value on line %d: whitespace before value: '%s' | console | error | caddy, env-file, parsing, configuration |
| unable to enumerate installed plugins: %v | console | error | caddy, upgrade, build-info, cli, plugins |
| module name is required | console | error | caddy, cli, packages, argument-validation |
| at least one package name must be specified | console | error | caddy, cli, packages, argument-validation |
| invalid module name: %v | console | error | caddy, add-package, argument-validation, cli |
| package is already added | console | warning | caddy, add-package, idempotency, cli, plugins |
| package is not added | console | warning | caddy, remove-package, cli, plugins |
| determining current executable path: %v | console | error | caddy, upgrade, os, executable, containers |
| retrieving current executable permission bits: %v | console | error | caddy, upgrade, filesystem, race, cli |
| resolving current executable symlink: %v | console | error | caddy, upgrade, symlink, filesystem, cli |
| download failed: %v | console | error | caddy, upgrade, network, download-api, cli, packages |
| backing up current binary: %v | console | error | upgrade, filesystem, permissions, cli |
| download succeeded, but unable to execute 'caddy list-module | console | error | upgrade, exec, subprocess, cli |
| download succeeded, but unable to execute 'caddy version': % | console | error | upgrade, exec, subprocess, cli |
| download succeeded, but unable to clean up backup binary: %v | console | warning | upgrade, cleanup, permissions, cli |
| no build info | console | error | build-info, upgrade, toolchain |
| secure request failed: %v | console | error | network, proxy, dns, upgrade |
| download and error decoding failed: HTTP %d: %v | console | error | network, http, api, upgrade |
| download failed: HTTP %d: %s (id=%s) | console | error | api, plugins, upgrade, http |
| cannot auto-upgrade when Go module has been replaced: %s => | console | error | upgrade, go-modules, xcaddy, plugins |
| unable to open destination file: %v | console | error | upgrade, filesystem, permissions |
| unable to download file: %v | console | error | network, download, upgrade, retry |
| syncing downloaded file to device: %v | console | error | filesystem, disk, upgrade |
| opening input file: %v | console | error | storage, import, filesystem, cli |
| reading archive: %v | console | error | storage, import, tar, archive |
| opening output file: %v | console | error | storage, export, filesystem, cli |
| writing archive: %v | console | error | storage, export, tar, disk |
| position %d: %v | validation | error | caddy, module-system, config, json, reflection |
| unrecognized type for module: %s | validation | error | caddy, module-system, reflection, plugin-development |
| key %s: %v | validation | error | caddy, module-system, config, json, map |
| module name '%s': %v | validation | error | caddy, module-system, config, registration |
| unknown module: %s | validation | error | caddy, module-system, registration, plugins |
| module '%s' has no constructor | validation | error | caddy, module-system, plugin-development, constructor |
| decoding module config: %s: %v | validation | error | caddy, module-system, json, config, strict-decoding |
| module value cannot be null | validation | error | caddy, config, json, null-handling |
| %v; additionally, cleanup: %v | validation | error | caddy, module-system, lifecycle, cleanup, provisioning |
| provision %s: %v | validation | error | caddy, module-system, provisioning, lifecycle |
| %s: invalid configuration: %v | validation | error | caddy, module-system, validation, config |
| loading module '%s': %v | validation | error | caddy, module-system, json, config, inline-module |
| loading %s app module: %v | validation | error | caddy, apps, provisioning, error-caching, dependencies |
| app module %s: %w | validation | error | caddy, apps, context, not-configured |
| module not configured | error_code | error | caddy, apps, sentinel-error, not-configured |
| could not parse octal permission bits in %s: %v | validation | error | unix-socket, permissions, config, caddyfile |
| owner of the socket requires '-w-' (write, octal: '2') permi | validation | error | unix-socket, permissions, validation |
| invalid file descriptor: %v | validation | error | file-descriptor, socket-activation, listen, config |
| invalid socket file descriptor: %d | validation | error | file-descriptor, socket-activation, runtime |
| cannot reuse socket %v: %w | exception | error | unix-socket, windows, port-conflict, listen |
| invalid file descriptor: %v | validation | error | file-descriptor, socket-activation, listen, unix |
| invalid socket file descriptor: %d | validation | error | file-descriptor, socket-activation, unix, runtime |
| unsupported network type: %s | validation | error | listen, network, validation, config |
| unable to set permissions (%s) on %s: %v | exception | error | unix-socket, permissions, filesystem, listen |
| invalid start port: %v | validation | error | port, parsing, validation, config |
| invalid end port: %v | validation | error | port, parsing, validation, port-range |
| end port must not be less than start port | validation | error | port, port-range, validation |
| port range exceeds %d ports | validation | error | port, port-range, limits, validation |
| setting up sink log: %v | exception | error | logging, provision, config |
| setting up custom log '%s': %v | exception | error | logging, provision, config, caddyfile |
| setting up default Caddy log: %v | exception | error | logging, default, provision, environment |
| setting up default log: %v | exception | error | logging, default-log, options, config |
| loading log writer module: %v | exception | error | logging, writer, module, config |
| opening log writer using %#v: %v | exception | error | logging, provisioning, filesystem, permissions |
| loading log encoder module: %v | exception | error | logging, module-system, configuration |
| configuring default format for encoder module: %v | exception | error | logging, encoder, module-system |
| loading log core module: %v | exception | error | logging, module-system, zap |
| include and exclude must not intersect, but found %s in both | validation | error | logging, validation, configuration |
| when both include and exclude are populated, each element mu | validation | error | logging, validation, namespaces |
| invalid log level: %v | validation | error | logging, environment-variables, placeholders, validation |
| unrecognized log level: %s | validation | error | logging, validation, configuration |
| module not registered: %s | validation | error | module-system, registration, build |
| module name not specified with key '%s' in %+v | validation | error | json, module-system, configuration, validation |
| re-encoding module configuration: %v | exception | error | json, internal, rare |
| %w, at offset %d | validation | error | json, parsing, configuration |
| loading event subscriber modules: %v | exception | error | events, module-system, provisioning |
| no handlers defined | validation | error | events, validation, configuration |
| loading file system module: %v | exception | error | filesystem, module-system, provisioning |
| getting tls app: %v | exception | error | tls, http, provisioning, dependencies |
| getting events app: %v | exception | error | events, http, provisioning, dependencies |
| server %s: listener protocols count does not match address c | validation | error | http, listen, protocols, validation |
| loading trusted proxies modules: %v | exception | error | http, trusted-proxies, module-system, validation |
| server %s: %v | exception | error | caddy, http, headers, provisioning, config |
| server %s, listener %d: %v | exception | error | caddy, placeholders, listener, provisioning, environment |
| loading listener wrapper modules: %v | exception | error | caddy, modules, listener, plugins, config |
| it is unnecessary to specify the TLS listener wrapper in the | validation | error | caddy, tls, listener-wrappers, config |
| TLS listener wrapper can only be specified once | validation | error | caddy, tls, listener-wrappers, config |
| loading packet conn wrapper modules: %v | exception | error | caddy, modules, quic, udp, plugins |
| server %s: setting up route handlers: %v | exception | error | caddy, http, handlers, provisioning, config |
| server %s: setting up error handling routes: %v | exception | error | caddy, http, error-handling, provisioning, config |
| server %s: setting up named route '%s' handlers: %v | validation | error | caddy, http, named-routes, provisioning, config |
| server %s: setting up TLS connection policies: %v | validation | error | caddy, tls, connection-policies, config |
| invalid listener address '%s': %v | validation | error | caddy, listener, validation, config |
| server %s: listener address repeated: %s (already claimed by | validation | error | caddy, listener, validation, ports, config |
| server %s: logger name must not have a port: %s | validation | error | caddy, logging, validation, config |
| %s: parsing listen address '%s': %v | console | error | caddy, listener, placeholders, startup, environment |
| listening on %s: %v | console | critical | caddy, listener, network, bind, startup |
| network '%s' cannot handle HTTP/1 or HTTP/2 connections | console | error | caddy, listener, network, unix, startup |
| finalizing automatic HTTPS: %v | console | critical | caddy, https, acme, tls, certificates, startup |
| server graceful shutdown %ds timeout | console | warning | caddy, shutdown, grace-period, lifecycle, timeouts |
| server %s: setting up route matchers: %v | validation | error | caddy, matchers, auto-https, provisioning, config |
| %s: route %d, matcher set %d, matcher %d, host matcher %d: % | validation | error | caddy, auto-https, placeholders, config |
| account %d: username and password are required | validation | error | |
| base64-decoding password: %v | validation | error | |
| loading authentication providers: %v | validation | error | |
| not authenticated | http | error | |
| password does not match | console | error | |
| plaintext is required | console | error | |
| failed to get argon2id time parameter: %w | console | error | |
| failed to get argon2id memory parameter: %w | console | error | |
| failed to get argon2id threads parameter: %w | console | error | |
| failed to get argon2id keylen parameter: %w | console | error | |
| unrecognized hash algorithm: %s | console | error | |
| error initializing CEL library for %T: %v | validation | error | |
| setting up CEL environment: %v | validation | error | |
| compiling CEL program: %s | validation | error | |
| CEL request matcher expects return type of bool, not %s | validation | error | |
| unsupported matcher data type: %s | validation | error | |
| unsupported matcher data type: %s, %s | validation | error | |
| unsupported matcher data type: %s, %s, %s | validation | error | |
| invalid matcher factory, must be CELMatcherFactory or CELMat | validation | error | |
| unsupported map key type in header match: %T | validation | error | caddy, cel, matcher, headers, config |
| unsupported value type in matcher input: %T | validation | error | caddy, cel, matcher, type-conversion |
| unsupported element type in matcher input list: %T | validation | error | caddy, cel, matcher, type-conversion, yaml |
| loading encoder modules: %v | validation | error | caddy, encode, modules, provision, xcaddy |
| adding encoding %s: %v | validation | error | caddy, encode, modules, plugin |
| encoding %s not enabled | validation | error | caddy, encode, config, validation |
| encoding %s is duplicated in prefer | validation | error | caddy, encode, config, validation |
| encoder does not specify an Accept-Encoding value | validation | error | caddy, encode, plugin, api-contract |
| encoder already added: %s | validation | error | caddy, encode, plugin, conflict |
| quality too low; must be >= %d | validation | error | caddy, gzip, encode, validation, config |
| quality too high; must be <= %d | validation | error | caddy, gzip, encode, validation, config |
| unexpected compression level, use one of '%s', '%s', '%s', ' | validation | error | caddy, zstd, encode, validation, config |
| parsing browse template: %v | http | error | caddy, fileserver, browse, template, runtime |
| parsing browse template file: %v | http | error | caddy, fileserver, browse, template, filesystem |
| parsing default browse template: %v | http | error | caddy, fileserver, browse, template, internal |
| invalid precompressed flag: %v | console | error | caddy, cli, fileserver, flags |
| getting module named '%s': %v | console | error | caddy, cli, fileserver, modules, precompressed |
| module %s is not a precompressor; is %T | console | error | caddy, cli, fileserver, plugin, interface |
| unknown try policy %s | validation | error | caddy, fileserver, matcher, validation, config |
| %s | http | info | caddy, fileserver, try-files, matcher, status-code |
| loading encoder modules: %v | validation | error | caddy, fileserver, precompressed, provisioning, config |
| module %s is not precompressor | validation | error | caddy, fileserver, precompressed, module-system, interface |
| precompressor does not specify an Accept-Encoding value | validation | error | caddy, fileserver, precompressed, module-system, validation |
| precompressor does not specify a Suffix value | validation | error | caddy, fileserver, precompressed, module-system, validation |
| precompressor already added: %s | validation | error | caddy, fileserver, precompressed, duplicate-config, provisioning |
| the first option must be one of the following: %s, %s, %s, % | validation | error | caddy, fileserver, browse, sort-options, config-validation |
| the second option must be one of the following: %s, %s, but | validation | error | caddy, fileserver, browse, sort-options, config-validation |
| only max 2 sort options are allowed, but got %d | validation | error | caddy, fileserver, browse, sort-options, config-validation |
| illegal ADS path | http | warning | caddy, fileserver, windows, ads, security, http-400 |
| filesystem not found | http | error | caddy, fileserver, file-system, plugin, http-404 |
| cannot read etag from file %s: %v | http | error | caddy, fileserver, etag, permissions, io |
| %v: the default header modifier ('?') can only be used on re | validation | error | caddy, headers, caddyfile, config-parse, request-headers |
| replacement %d for header field '%s': %v | validation | error | caddy, headers, regex, re2, config-validation |
| cannot specify both a substring search and a regular express | validation | error | caddy, headers, replace, config-validation, json |
| provisioning response handler %d: %w | validation | error | caddy, intercept, handle-response, provisioning, experimental |
| invoke: route '%s' not found | http | error | caddy, invoke, named-routes, routing, config |
| parsing CIDR expression '%s': %v | validation | error | caddy, config, network, cidr, ipv4, ipv6 |
| invalid IP address: '%s': %v | validation | error | caddy, config, network, ip-address, validation |
| parsing CIDR expression: '%s': %v | validation | error | caddy, config, cidr, ip-range, validation |
| invalid IP address: '%s': %v | validation | error | caddy, config, ip-address, ip-range, validation |
| destination must be a placeholder and only a placeholder | validation | error | caddy, config, map-handler, placeholder, validation |
| compiling regexp for mapping %d: %v | validation | error | caddy, config, regex, map-handler, re2 |
| %d destinations != %d defaults | validation | error | caddy, config, map-handler, validation, arity |
| mapping %d has both input and input_regexp fields specified, | validation | error | caddy, config, map-handler, validation, mutual-exclusion |
| mapping %d has a duplicate input '%s' previously used with m | validation | error | caddy, config, map-handler, duplicates, validation |
| mapping %d has %d outputs but there are %d destinations defi | validation | error | caddy, config, map-handler, arity, validation |
| converting hostname '%s' to ASCII: %v | validation | error | caddy, config, dns, idna, host-matcher |
| host at index %d is repeated at index %d: %s | validation | warning | caddy, config, duplicates, host-matcher, idna |
| loading matcher sets: %v | validation | error | caddy, config, matcher, error-wrapping, not-matcher |
| module is not a request matcher: %T | validation | error | caddy, plugin, matcher, type-assertion, module-system |
| compiling matcher regexp %s: %v | validation | error | caddy, config, regex, re2, matcher |
| invalid regexp name (must contain only word characters): %s | validation | error | caddy, config, regex, naming, placeholder |
| matcher module '%s' is not a request matcher | validation | error | caddy, caddyfile, matcher, plugin, adaptation |
| marshaling %T matcher: %v | validation | error | caddy, plugin, json, serialization, matcher |
| creating OTLP metric reader: %w | validation | error | caddy, metrics, opentelemetry, environment, configuration |
| building OTLP metrics resource: %w | validation | error | caddy, metrics, opentelemetry, resource, environment |
| %s is %w | validation | error | proxy-protocol, configuration, caddyfile, validation |
| provisioning header operations: %v | validation | error | http2-push, headers, provisioning, configuration |
| due to parsing difficulties, placeholders are not allowed wh | validation | error | reverse-proxy, upstream, placeholders, configuration |
| parsing upstream URL: %v | validation | error | reverse-proxy, upstream, url-parsing, configuration |
| parsing upstream URL: parse "%v": port range invalid: %v | validation | error | reverse-proxy, port-range, upstream, configuration |
| for now, URLs for proxy upstreams only support scheme, host, | validation | error | reverse-proxy, upstream, rewrite, configuration |
| upstream address has conflicting scheme (http://) and port ( | validation | error | reverse-proxy, upstream, tls, port-conflict |
| upstream address has conflicting scheme (https://) and port | validation | error | reverse-proxy, upstream, tls, port-conflict |
| upstream address has conflicting scheme (h2c://) and port (: | validation | error | reverse-proxy, h2c, grpc, port-conflict |
| method not allowed | http | warning | admin-api, reverse-proxy, http-method, monitoring |
| parsing upstream '%s': %w | validation | error | reverse-proxy, caddyfile, upstream, configuration |
| invalid to flag: %v | console | error | cli, reverse-proxy, flags, startup |
| --to is required | console | error | cli, reverse-proxy, flags, startup |
| invalid downstream address %s: %v | console | error | cli, reverse-proxy, address-parsing, startup |
| paths are not allowed: %s | console | error | cli, reverse-proxy, address-parsing, startup |
| invalid upstream address %s: %v | console | error | cli, reverse-proxy, upstream, startup |
| invalid header flag: %v | console | error | cli, reverse-proxy, headers, startup |
| header-up %d: invalid format "%s" (expecting "Field: value") | console | error | cli, reverse-proxy, headers, validation |
| header-down %d: invalid format "%s" (expecting "Field: value | console | error | cli, reverse-proxy, headers, validation |
| cannot use 'copy_response' outside of reverse_proxy's handle | http | error | reverse-proxy, caddyfile, handle-response, config |
| cannot define both 'exclude' and 'include' lists at the same | validation | error | reverse-proxy, caddyfile, validation, handle-response |
| cannot use 'copy_response_headers' outside of reverse_proxy' | http | error | reverse-proxy, caddyfile, handle-response, config |
| invalid request path | http | error | fastcgi, security, http-400, php |
| expect_body: compiling regular expression: %v | validation | error | reverse-proxy, health-check, regex, validation |
| unsupported HTTP version: %s, supported version: %s | validation | error | reverse-proxy, http-transport, validation, config |
| local_address must be a single address, not a port range | validation | error | reverse-proxy, http-transport, network, validation |
| local_address must be a TCP address, not a UDP address | validation | error | reverse-proxy, http-transport, network, validation |
| unsupported network | validation | error | reverse-proxy, http-transport, network, validation |
| failed to get proxy protocol info from context | exception | error | reverse-proxy, proxy-protocol, network, listener |
| unexpected proxy protocol version | validation | error | reverse-proxy, proxy-protocol, json-config, validation |
| failed to load network_proxy module: %v | exception | error | reverse-proxy, http-transport, modules, config |
| network_proxy module is not `(func(*http.Request) (*url.URL, | validation | error | reverse-proxy, http-transport, modules, interface |
| making TLS client config: %v | exception | error | reverse-proxy, tls, http-transport, config |
| HTTP transport TLS handshake %ds timeout | exception | error | reverse-proxy, tls, timeout, network |
| making TLS client config for HTTP/3 transport: %v | exception | error | reverse-proxy, http3, tls, config |
| making udp socket for HTTP/3 transport: %v | exception | error | network, udp, quic, http3, reverseproxy, environment |
| if HTTP/3 is enabled to the upstream, no other HTTP versions | validation | error | config, http3, versions, reverseproxy, validation |
| client_certificate_file specified without client_certificate | validation | error | config, mtls, tls, reverseproxy, validation |
| client_certificate_key_file specified without client_certifi | validation | error | config, mtls, tls, reverseproxy, validation |
| parsing CIDR expression: '%s': %v | validation | error | config, network, ip, validation, reverseproxy |
| invalid IP address: '%s': %v | validation | error | |
| provisioning embedded headers handler: %v | exception | error | |
| provisioning rewrite: %v | exception | error | |
| provisioning default transport: %v | exception | error | |
| provisioning transport header ops: %v | exception | error | |
| provisioning response handler %d: %v | exception | error | |
| preparing request for upstream round-trip: %v | http | error | |
| making dial info: %v | exception | error | |
| upstream response matched retry_match (status %d) | exception | error | |
| no upstreams available | exception | error | |
| weighted_round_robin requires at least one upstream with a p | validation | error | |
| weight of an upstream cannot be negative | validation | error | |
| choose must be at least 2 | validation | error | |
| query key is required | validation | error | |
| loading fallback selection policy: %s | validation | error | |
| header field is required | validation | error | |
| loading upstream source modules: %v | validation | error | |
| resolver address must have exactly one address; cannot call | validation | error | |
| path_regexp find cannot be empty | validation | error | caddy, config, rewrite, regex, provisioning |
| compiling regular expression %d: %v | validation | error | caddy, regex, rewrite, config, re2 |
| compiling regular expression %s in query rewrite replace ope | validation | error | caddy, regex, query-string, rewrite, config |
| replacement for query field '%s': %v | validation | error | caddy, regex, query-string, rewrite |
| loading matcher modules: %v | validation | error | caddy, config, matchers, module-loading, routing |
| loading handler modules: %v | validation | error | caddy, config, handlers, module-loading, routing |
| route %d: %v | validation | error | caddy, config, matchers, routing, wrapper-error |
| decoded module is not a RequestMatcher or RequestMatcherWith | validation | error | caddy, plugin-development, matchers, type-assertion, interfaces |
| %s: entry %q contains non-ASCII characters | validation | error | caddy, headers, config-validation, ascii, provisioning |
| %s: entry %q has '*' in an invalid position (only a trailing | validation | error | caddy, headers, wildcard, config-validation |
| %s: entry %q does not contain a %q | validation | error | caddy, headers, config-validation, separator |
| starting HTTP/3 QUIC listener: %v | console | critical | caddy, http3, quic, network, listeners, startup |
| network '%s' cannot handle HTTP/3 connections | console | error | caddy, http3, network, registry, embedding |
| %s | http | info | caddy, error-handler, static-response, placeholders, by-design |
| too many unflagged arguments | console | error | caddy, cli, respond, argument-validation |
| unflagged argument \"%s\" is overridden by flags | console | error | caddy, cli, respond, flag-conflict |
| invalid header flag: %v | console | error | caddy, cli, respond, flags, headers, embedding |
| header %d: invalid format \"%s\" (expecting \"Field: value\" | console | error | caddy, cli, headers, configuration |
| setting up subroutes: %v | validation | error | caddy, subroute, provisioning, configuration |
| setting up error subroutes: %v | validation | error | caddy, subroute, error-handling, provisioning |
| unterminated front matter | validation | error | caddy, templates, frontmatter, markdown |
| loading template extensions: %v | validation | error | caddy, templates, plugins, provisioning |
| delimiters must consist of exactly two elements: opening and | validation | error | caddy, templates, delimiters, configuration |
| root file system not specified | validation | error | caddy, templates, filesystem, configuration |
| parsing %s: %v | exception | error | caddy, templates, headers, recursion |
| virtual request cycle | exception | error | caddy, templates, recursion, http-include |
| http %d | exception | error | caddy, templates, http-include, status |
| %v is not a directory | validation | error | caddy, templates, filesystem, path |
| humanize: size cannot be parsed: %s | validation | warning | caddy, templates, humanize, parsing |
| humanize: time cannot be parsed: %s | validation | warning | caddy, templates, humanize, time, parsing |
| no know function was given | validation | warning | caddy, templates, humanize, validation |
| maybe %s: invalid number of return values: %d | exception | error | caddy, templates, reflection, plugins |
| tracerProvider shutdown: %w | exception | warning | caddy, tracing, opentelemetry, shutdown |
| creating resource error: %w | validation | error | caddy, tracing, opentelemetry, environment |
| creating trace exporter error: %w | validation | error | tracing, opentelemetry, environment, config, caddyhttp |
| tracerProvider shutdown error: %w | exception | warning | tracing, opentelemetry, shutdown, flush, lifecycle |
| unable to parse URL pattern: %w | validation | error | matcher, urlpattern, caddyfile, validation, caddyhttp |
| url_pattern expects a string argument | validation | error | cel, expression, urlpattern, caddyfile, caddyhttp |
| certificate lifetime (%s) should be less than intermediate c | validation | error | pki, acme, certificates, lifetime, config |
| configuring ACME DB: %v | validation | error | pki, acme, bbolt, database, filesystem |
| making folder for CA database: %v | exception | error | pki, acme, filesystem, permissions, environment |
| resolver address must have exactly one address; cannot call | validation | error | pki, acme, dns, resolvers, validation |
| acme challenge %q is not supported | validation | error | pki, acme, challenges, validation, config |
| resource not found: %v | http | info | pki, admin-api, http-404, routing |
| method not allowed: %v | http | info | pki, admin-api, http-405, read-only |
| failed to get root and intermediate cert for CA %s: %v | http | error | pki, admin-api, http-500, storage, certificates |
| missing CA in path | http | info | pki, admin-api, http-400, url |
| no certificate authority configured with id: %s | http | info | pki, admin-api, http-404, config |
| failed to provision CA %s, %w | http | error | pki, admin-api, http-500, provisioning, storage |
| CA ID is required (use 'local' for the default CA) | validation | error | pki, ca, validation, config |
| loading storage module: %v | validation | error | pki, storage, modules, plugin, config |
| creating storage configuration: %v | validation | error | pki, storage, modules, certmagic, config |
| intermediate certificate lifetime must be less than actual r | validation | error | pki, certificates, validation, lifetime, config |
| loading signing key: %v | exception | critical | pki, signing, root-key, storage |
| initializing certificate authority: %v | exception | critical | pki, step-ca, initialization, root-cert |
| loading root cert: %v | exception | error | pki, storage, io, root-cert |
| generating root: %v | exception | critical | pki, root-cert, crypto, entropy |
| parsing root certificate PEM: %v | exception | critical | pki, root-cert, pem, corruption |
| loading root key: %v | exception | critical | pki, root-key, storage, partial-state |
| decoding root key: %v | exception | critical | pki, root-key, pem, crypto |
| generating CA root: %v | exception | critical | pki, root-cert, crypto, generation |
| encoding root certificate: %v | exception | error | pki, pem, encoding, internal |
| saving root certificate: %v | exception | critical | pki, storage, io, root-cert |
| encoding root key: %v | exception | error | pki, root-key, pem, encoding |
| saving root key: %v | exception | critical | pki, storage, root-key, partial-state |
| loading intermediate cert: %v | exception | error | pki, storage, intermediate, io |
| generating new intermediate cert: %v | exception | critical | pki, intermediate, signing, crypto |
| decoding intermediate certificate PEM: %v | exception | critical | pki, intermediate, pem, corruption |
| loading intermediate key: %v | exception | critical | pki, intermediate-key, storage, partial-state |
| decoding intermediate key: %v | exception | critical | pki, intermediate-key, pem, crypto |
| generating CA intermediate: %v | exception | critical | pki, intermediate, signing, generation |
| encoding intermediate certificate: %v | exception | error | pki, intermediate, pem, encoding |
| saving intermediate certificate: %v | exception | error | |
| encoding intermediate key: %v | exception | error | |
| saving intermediate key: %v | exception | error | |
| couldn't determine admin API address: %v | console | error | |
| conflicting command line arguments, cannot use --cert with o | console | error | |
| accessing certificate file: %v | console | error | |
| failed to uninstall certificate file: %v | console | error | |
| requesting CA info: %v | console | error | |
| failed to decode JSON response: %v | console | error | |
| failed to decode root certificate: %v | console | error | |
| failed to parse root certificate: %v | console | error | |
| no PEM block found | validation | error | |
| input contained more than a single PEM block | validation | error | |
| expected PEM block type to be CERTIFICATE, but got '%s' | validation | error | |
| failed parsing certificate chain: %w | exception | error | |
| unsupported format: %s | validation | error | |
| private key type %T does not match issuer public key type %T | validation | error | |
| unsupported key type: %T | validation | error | pki, crypto, unsupported-algorithm, certificate |
| loading root key: %v | exception | error | pki, maintenance, renewal, storage, permissions |
| generating new certificate: %v | exception | error | pki, maintenance, intermediate, renewal, key-mismatch |
| provisioning CA '%s': %v | exception | critical | pki, configuration, startup, provisioning |
| no certificate authority configured with id: %s | validation | error | pki, configuration, ca-id, internal-issuer |
| failed to provision default CA: %s | validation | critical | pki, default-ca, storage, lazy-provisioning |
| expanding email address '%s': %v | validation | error | tls, acme, placeholders, environment, configuration |
| expanding CA endpoint '%s': %v | validation | error | tls, acme, placeholders, environment, ca-endpoint |
| expanding TestCA endpoint '%s': %v | validation | error | tls, acme, placeholders, staging, environment |
| expanding EAB key ID '%s': %v | validation | error | tls, acme, eab, placeholders, secrets, environment |
| expanding EAB MAC key (redacted): %v | validation | error | tls, acme, eab, secrets, placeholders, environment |
| expanding account key PEM '%s': %v | validation | error | tls, acme, account-key, placeholders, secrets |
| expanding DNS override domain '%s': %v | validation | error | tls, acme, dns-challenge, placeholders, wildcard |
| loading DNS provider module: %v | validation | error | tls, acme, dns-challenge, plugin, xcaddy, credentials |
| DNS challenge enabled, but no DNS provider configured | validation | error | tls, acme, dns-challenge, wildcard, configuration |
| loading trusted root CA's PEM file: %s: %v | validation | error | tls, acme, trust-store, filesystem, containers, permissions |
| unable to add %s to trust pool: %v | validation | error | tls, acme, trust-store, pem, certificates |
| failed to load network_proxy module: %v | validation | error | tls, acme, network-proxy, plugin, xcaddy |
| network_proxy module is not `(func(*http.Request) (*url.URL, | validation | error | tls, acme, proxy, module-system, plugin |
| your email address is required to use ZeroSSL's ACME endpoin | validation | error | tls, acme, zerossl, configuration |
| forming request: %v | exception | error | tls, acme, zerossl, http |
| performing EAB credentials request: %v | exception | error | tls, acme, zerossl, network, firewall |
| decoding API response: %v | exception | error | tls, acme, zerossl, json, network |
| failed getting EAB credentials: HTTP %d: %s (code %d) | exception | error | tls, acme, zerossl, api-error, configuration |
| failed getting EAB credentials: HTTP %d | exception | error | tls, acme, zerossl, rate-limit, transient |
| could not convert automation policy subject '%s' to punycode | validation | error | tls, configuration, dns, idna, validation |
| loading TLS storage module: %v | validation | error | tls, storage, module-system, configuration |
| creating TLS storage configuration: %v | validation | error | tls, storage, permissions, network |
| loading external certificate manager modules: %v | validation | error | tls, certificates, module-system, configuration |
| loading TLS automation management module: %s | validation | error | tls, acme, issuers, module-system, configuration |
| invalid key type %s: %s | validation | error | tls, configuration, placeholders, environment |
| unrecognized key type: %s | validation | error | tls, configuration, key-type, validation |
| on-demand TLS cannot be enabled without a permission module | validation | error | tls, on-demand, abuse-prevention, configuration, security |
| no permission module configured; certificates not allowed ex | exception | warning | tls, on-demand, handshake, security, runtime |
| provisioning default issuer %d: %T: %v | validation | error | tls, acme, defaults, provisioning |
| parsing certificate at index %d: %v | validation | error | tls, client-auth, certificates, base64, configuration |
| reading %s: %v | validation | error | tls, client-auth, filesystem, permissions, configuration |
| parsing certificate in %s: %v | validation | error | tls, client-auth, certificates, pem, parsing |
| pki_root CA pool requires that a PKI app is configured: %v | validation | error | caddy, caddytls, pki, configuration, provisioning |
| getting CA %s: %v | validation | error | caddy, caddytls, pki, configuration, id-mismatch |
| CA %s has no root certificate | validation | error | caddy, caddytls, pki, certificate, provisioning |
| pki_intermediate CA pool requires that a PKI app is configur | validation | error | caddy, caddytls, pki, configuration, provisioning |
| CA %s has a nil certificate in its intermediate chain | validation | error | caddy, caddytls, pki, certificate, nil-check |
| loading storage module: %v | validation | error | caddy, caddytls, storage, module-loading, configuration |
| creating storage configuration: %v | validation | error | caddy, caddytls, storage, backend, configuration |
| no PEM keys specified | validation | error | caddy, caddytls, storage, configuration, validation |
| error loading cert '%s' from storage: %s | validation | error | caddy, caddytls, storage, missing-file, io |
| parsing certificate '%s': %v | validation | error | caddy, caddytls, certificate, pem, parsing |
| invalid TLS renegotiation level: %v | validation | error | caddy, caddytls, tls, renegotiation, configuration, validation |
| HTTP %d fetching CA certificate bundle from %s | validation | error | caddy, caddytls, network, http, status-code |
| parsing certificate from URL %s: %v | validation | error | caddy, caddytls, certificate, pem, parsing, http |
| failed to load system cert pool: %v | validation | error | caddy, caddytls, system, trust-store, container |
| no sources specified for combined CA pool | validation | error | caddy, caddytls, configuration, validation, combined-pool |
| loading CA pool sources: %v | validation | error | caddy, caddytls, module-loading, configuration, combined-pool |
| source module is not a CA pool provider | validation | error | caddy, caddytls, type-assertion, module-system, combined-pool |
| source %T does not implement CertificateProvider (required f | validation | error | caddy, caddytls, interface, plugin, combined-pool |
| source %T returned nil certificates | validation | error | caddy, caddytls, nil-check, plugin, combined-pool |
| source %T returned a nil certificate | validation | error | caddy, tls, x509, trust-pool, plugin |
| URL is required | validation | error | caddy, tls, certificates, configuration, http |
| got HTTP %d | console | error | caddy, tls, http, certificates, status-code, network |
| error reading response body: %v | console | error | caddy, tls, http, network, io |
| no certificates matched custom selection policy | console | error | caddy, tls, certificates, cert-selection, configuration |
| not a valid big integer: %s | validation | error | caddy, tls, json, cert-selection, validation |
| loading handshake matchers: %v | validation | error | caddy, tls, connection-policy, modules, configuration |
| connection policy %d: building standard TLS config: %s | validation | error | caddy, tls, connection-policy, configuration, wrapper-error |
| loading client cert verifiers: %v | validation | error | caddy, tls, client-auth, modules, configuration |
| loading handshake context module: %v | validation | error | caddy, tls, modules, connection-policy, experimental |
| dropping connection | console | warning | caddy, tls, connection-policy, intentional, handshake |
| no server TLS configuration available for ClientHello: %+v | console | error | caddy, tls, sni, connection-policy, handshake |
| getting tls app: %v | validation | error | caddy, tls, embedding, internal, context |
| handshake context: %v | console | error | caddy, tls, handshake, plugin, experimental |
| unsupported cipher suite: %s | validation | error | caddy, tls, cipher-suites, configuration, validation |
| protocol min (%x) cannot be greater than protocol max (%x) | validation | error | caddy, tls, protocol-versions, configuration, validation |
| provisioning client CA: %v | validation | error | caddy, tls, client-auth, trust-pool, configuration |
| configuring TLS client authentication: %v | validation | error | caddy, tls, client-auth, configuration, verifier |
| trust_pool module '%s' is not a certificate pool provider | validation | error | caddy, tls, client-auth, trust-pool, plugin, caddyfile |
| no CERTIFICATE pem block found in %s | validation | error | caddy, tls, pem, certificates, client-auth, file-io |
| conflicting config for client authentication trust CA | validation | error | tls, client-auth, config-conflict, validation |
| 'ca' module '%s' is not a certificate pool provider | validation | error | tls, client-auth, module-system, xcaddy |
| client auth mode not recognized: %s | validation | error | tls, client-auth, config, validation |
| parsing certificate: %v | validation | error | tls, client-auth, deprecated, base64, certificate |
| could not parse leaf certificates loaders: %s | validation | error | tls, client-auth, module-system, config |
| could not load leaf certificates: %s | validation | error | tls, client-auth, file-io, containers |
| leaf module '%s' is not a leaf certificate loader | exception | error | tls, caddyfile, module-system, xcaddy |
| no client certificate provided | exception | error | tls, mtls, client-cert, handshake |
| can't parse the given certificate: %s | exception | error | tls, x509, handshake, client-cert |
| client leaf certificate failed validation | exception | error | tls, mtls, client-cert, pinning |
| unrecognized public key algorithm: %s (expected one of %v) | exception | error | tls, json, validation, x509 |
| matcher module '%s' is not a connection matcher | exception | error | tls, caddyfile, module-system, xcaddy |
| marshaling %T matcher: %v | exception | error | tls, json, module-system, xcaddy |
| loading TLS storage module: %s | exception | error | tls, stek, storage, module-system |
| creating TLS storage configuration: %v | exception | error | tls, stek, storage, configuration |
| STEK gob corrupted: %v | exception | warning | tls, stek, gob, storage, corruption |
| encoding STEK gob: %v | exception | warning | tls, stek, gob, internal |
| storing STEK gob: %v | exception | warning | tls, stek, storage, infrastructure |
| failed to acquire storage lock: %v | exception | error | |
| creating new STEK: %v | exception | error | |
| loading STEK: %v | exception | error | |
| rotating keys: %v | exception | error | |
| loading ECH publication modules: %v | exception | error | |
| loading configs from storage: %w | exception | error | |
| rotating ECH configs: %w | exception | error | |
| updating ECH keys from storage: %v | exception | error | |
| generating and storing new replacement ECH config: %w | exception | error | |
| marshaling updated ECH config metadata: %v | exception | error | |
| storing updated ECH config metadata: %v | exception | error | |
| deleting expired ECH config: %v | exception | error | |
| marshaling ECH config list: %v | exception | error | |
| marshaling ECH config metadata: %v | exception | error | |
| error loading private key (%v) and cleaning up parent storag | exception | error | |
| error loading ECH config (%v) and cleaning up parent storage | exception | error | |
| error loading ECH config metadata (%v) and cleaning up paren | exception | error | |
| error decoding ECH metadata (%v) and cleaning up parent stor | exception | error | |
| generating unique config ID: %v | exception | error | tls, ech, storage, provisioning |
| marshaling ECH private key: %v | exception | error | tls, ech, crypto, internal |
| marshaling ECH config: %v | exception | error | tls, ech, validation, serialization |
| storing ECH private key: %v | exception | error | tls, ech, storage, permissions |
| storing ECH config: %v | exception | error | tls, ech, storage, partial-write |
| storing ECH config metadata: %v | exception | error | tls, ech, storage, partial-write |
| loading ECH DNS provider module: %v | validation | error | tls, ech, dns, module-system, config |
| ECH DNS provider module is not an ECH DNS Provider: %v | validation | error | tls, ech, dns, module-system, type-assertion |
| could not determine zone for domain: %w (domain=%s nameserve | exception | warning | tls, ech, dns, network, soa |
| unable to get existing DNS records to publish ECH data to HT | exception | warning | tls, ech, dns, api, authentication |
| unable to publish ECH data to HTTPS DNS record: %w (zone=%s | exception | warning | tls, ech, dns, api, https-record |
| supported version must be %d: got %d | exception | error | tls, ech, serialization, version-mismatch, storage |
| invalid KEM ID: %d | exception | error | tls, ech, crypto, hpke, serialization |
| parsing public_key: %w | exception | error | tls, ech, crypto, hpke, serialization |
| invalid KDF ID: %d | exception | error | tls, ech, crypto, hpke, serialization |
| invalid AEAD ID: %d | exception | error | tls, ech, crypto, hpke, serialization |
| public name length (%d) must be in the range 1-255 | validation | error | tls, ech, validation, dns |
| depleted attempts to find an available config_id | exception | error | tls, ech, storage, capacity, rotation |
| encrypted private keys are not supported; please decrypt the | validation | error | tls, certificates, pem, encryption, config |
| unrecognized certificate/key encoding format: %s | validation | error | |
| unable to open root directory %s: %w | validation | error | |
| unable to traverse into path: %s | validation | error | |
| unable to get relative path for %s: %w | validation | error | |
| %s: %w | validation | error | |
| walking certificates directory %s: %w | validation | error | |
| expected elliptic private key to immediately follow EC param | validation | error | |
| unrecognized PEM block type: %s | validation | error | |
| failed to parse PEM data | validation | error | |
| no private key block found | validation | error | |
| encrypted private keys are not supported; please decrypt the | validation | error | |
| making X509 key pair: %v | validation | error | |
| no CERTIFICATE pem block found in %s | validation | error | |
| unable to traverse into path: %s | validation | error | |
| %s: %w | validation | error | |
| PEM leaf certificate loader, cert %d: %v | validation | error | |
| PEM cert %d: %v | validation | error | |
| loading storage module: %v | validation | error | |
| creating storage configuration: %v | validation | error | |
| no CERTIFICATE pem block found in the given pem data | validation | error | |
| compiling matcher regexp %s: %v | validation | error | |
| invalid regexp name (must contain only word characters): %s | validation | error | |
| parsing CIDR expression: %v | validation | error | |
| invalid IP address: '%s': %v | validation | error | |
| preparing 'ask' endpoint: %v | console | error | |
| parsing ask URL: %v | console | error | |
| checking %v to determine if certificate for hostname '%s' sh | console | error | |
| %s: %w %s - non-2xx status code %d | console | error | |
| following http redirects is not allowed | console | error | |
| PEM pair %d: %v | validation | error | |
| loading TLS session ticket ephemeral keys provider module: % | validation | error | |
| setting STEK module configuration: %v | validation | error | |
| generating STEK: %v | console | error | |
| encrypted private keys are not supported; please decrypt the | validation | error | |
| unrecognized certificate/key encoding format: %s | validation | error | |
| getting events app: %v | validation | error | |
| loading overall DNS provider module: %v | validation | error | caddy, dns, module-loading, provisioning, tls |
| DNS module does not implement the most common libdns interfa | validation | error | caddy, dns, libdns, interfaces, version-mismatch |
| loading certificate loader modules: %s | validation | error | caddy, tls, certificates, module-loading, config |
| loading certificates with 'automate' requires array of strin | validation | error | caddy, tls, automate, json, type-mismatch |
| loading certificates: %v | validation | error | caddy, tls, certificates, filesystem, pem |
| caching unmanaged certificate: %v | validation | error | caddy, tls, certificate-cache, certmagic, pem |
| on-demand TLS config conflict: both 'ask' endpoint and a 'pe | validation | error | caddy, tls, on-demand, config-conflict, deprecation |
| loading on-demand TLS permission module: %v | validation | error | caddy, tls, on-demand, module-loading, permission |
| provisioning default public automation policy: %v | validation | error | caddy, tls, automation-policy, provisioning, acme |
| provisioning default internal automation policy: %v | validation | error | caddy, tls, automation-policy, internal-issuer, pki |
| provisioning automation policy %d: %v | validation | error | caddy, tls, automation-policy, provisioning, config |
| preparing 'ask' endpoint: %v | validation | error | caddy, tls, on-demand, placeholders, environment-variables |
| provisioning 'ask' module: %v | validation | error | caddy, tls, on-demand, url-validation, ask-endpoint |
| provisioning session tickets configuration: %v | validation | error | caddy, tls, session-tickets, stek, module-loading |
| provisioning Encrypted ClientHello components: %v | validation | error | caddy, tls, ech, encrypted-clienthello, dns |
| automation policy %d is the second policy that acts as defau | validation | error | caddy, tls, automation-policy, validation, config |
| automation policy %d: cannot apply more than one automation | validation | error | caddy, tls, automation-policy, validation, duplicate-subject |
| cache capacity must be >= 0 | validation | error | caddy, tls, cache, validation, config |
| automate: managing %v: %v | console | critical | caddy, tls, acme, certificate-management, startup |
| automate: manage %v: %v | console | error | caddy, tls, acme, manage, certificate-renewal |
| loading DNS provider module: %v | validation | error | |
| provisioning fallback encoder module: %v | validation | error | |
| loading fallback encoder module: %v | validation | error | |
| invalid filename for log file: %v | validation | error | |
| dir_mode: %w | console | error | |
| unable to stat log file to see if we need to set permissions | console | error | |
| invalid roll_compression: %s | validation | error | |
| path component %s exists and is not a directory | validation | error | |
| provisioning fallback encoder module: %v | validation | error | |
| loading fallback encoder module: %v | validation | error | |
| loading log filter modules: %v | validation | error | |
| adding regexp operation for field %s: %v | validation | error | |
| too many regexp operations: %d (maximum %d allowed) | validation | error | |
| multi_regexp filter requires at least one operation | validation | error | |
| regexp pattern %d too long: %d characters (maximum %d) | validation | error | |
| regexp pattern %d cannot be empty | validation | error | |
| compiling regexp pattern %d (%s): %v | validation | error | |
| cannot add operation: maximum %d operations allowed | validation | error | caddy, logging, regexp, limits |
| regexp pattern cannot be empty | validation | error | caddy, logging, regexp, validation |
| regexp pattern too long: %d characters (maximum %d) | validation | error | caddy, logging, regexp, limits |
| provisioning fallback encoder module: %v | validation | error | caddy, logging, journald, provisioning |
| loading wrapped encoder module: %v | validation | error | caddy, logging, journald, module-loading |
| invalid host in address: %v | validation | error | caddy, logging, network, placeholders |
| parsing network address '%s': %v | validation | error | caddy, logging, network, address-parsing |
| multiple ports not supported | validation | error | caddy, logging, network, ports |
| timeout cannot be less than 0 | validation | error | caddy, logging, network, timeout |
| too many unclosed placeholders | validation | error | caddy, replacer, placeholders, dos-protection |
| unrecognized placeholder %s%s%s | validation | error | caddy, replacer, placeholders, config |
| evaluated placeholder %s%s%s is empty | validation | error | caddy, replacer, placeholders, environment |
| command short string is required | panic | critical | caddy, cli, plugin, panic |
| command already registered: %s | panic | critical | caddy, cli, plugin, panic, naming |
| invalid command name | panic | critical | caddy, cli, plugin, panic, naming |
| field %s does not exist in %#v | panic | critical | caddy, module-system, reflection, panic, plugin |
| malformed tag on field %s: %v | panic | critical | caddy, go, module-system, struct-tag, panic |
| missing 'namespace' key in struct tag on field %s | panic | critical | caddy, go, module-system, struct-tag, panic |
| unable to determine module name without inline_key when type | panic | critical | caddy, go, module-system, struct-tag, panic |
| unable to determine module name without inline_key because t | panic | critical | caddy, go, module-system, struct-tag, panic |
| expected ModuleMap because inline_key is empty; but we do no | panic | critical | caddy, go, module-system, modulemap, panic |
| more than 1 module passed in | panic | error | caddy, go, logging, deprecated-api, panic |
| config missing, unable to create dev logger: %v | panic | error | caddy, go, logging, zap, test-environment, panic |
| network type %s is reserved | panic | critical | caddy, go, network, listeners, plugin, panic |
| network type %s is already registered | panic | critical | caddy, go, network, plugin, duplicate-registration, panic |
| module ID missing | panic | critical | caddy, go, module-system, registration, panic |
| module ID '%s' is reserved | panic | critical | caddy, go, module-system, reserved-name, panic |
| missing ModuleInfo.New | panic | critical | caddy, go, module-system, registration, panic |
| ModuleInfo.New must return a non-nil module instance | panic | critical | caddy, go, module-system, registration, nil-check, panic |
| module already registered: %s | panic | critical | caddy, go, module-system, duplicate-registration, build, panic |
| not implemented | panic | error | caddy, cel, expression-matcher, caddyfile, runtime-panic |
| network type %s is already registered | panic | critical | caddy, go, http3, network, plugin, duplicate-registration, panic |
| deleted more than stored: %#v (usage: %d) | panic | critical | caddy, go, usagepool, reference-counting, lifecycle, panic |