caddyserver/caddy · error

provisioning rewrite: %v

Error message

provisioning rewrite: %v

What it means

Error "provisioning rewrite: %v" thrown in caddyserver/caddy.

Source

Thrown at modules/caddyhttp/reverseproxy/reverseproxy.go:350

			ipNew := netip.PrefixFrom(ipAddr, ipAddr.BitLen())
			h.trustedProxies = append(h.trustedProxies, ipNew)
		}
	}

	// ensure any embedded headers handler module gets provisioned
	// (see https://caddy.community/t/set-cookie-manipulation-in-reverse-proxy/7666?u=matt
	// for what happens if we forget to provision it)
	if h.Headers != nil {
		err := h.Headers.Provision(ctx)
		if err != nil {
			return fmt.Errorf("provisioning embedded headers handler: %v", err)
		}
	}

	if h.Rewrite != nil {
		err := h.Rewrite.Provision(ctx)
		if err != nil {
			return fmt.Errorf("provisioning rewrite: %v", err)
		}
	}

	// set up transport
	if h.Transport == nil {
		t := &HTTPTransport{}
		err := t.Provision(ctx)
		if err != nil {
			return fmt.Errorf("provisioning default transport: %v", err)
		}
		h.Transport = t
	}

	// If the transport can provide header ops, cache them now so we don't
	// have to compute them per-request. Provision the HeaderOps if present
	// so any runtime artifacts (like precompiled regex) are prepared.
	if tph, ok := h.Transport.(RequestHeaderOpsTransport); ok {
		h.transportHeaderOps = tph.RequestHeaderOps()

View on GitHub (pinned to 50e54ee279)

Solutions

  1. Fix the rewrite configuration inside the reverse_proxy block; see the wrapped error for details.

When it happens

Trigger: Thrown at modules/caddyhttp/reverseproxy/reverseproxy.go:350 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of caddyserver/caddy@50e54ee279 (2026-08-15). Data as JSON: /api/errors/f678a1c4774569ac. Report an issue: GitHub.