You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README.md 1.4KB

Chi proxy middleware

Forwarded headers middleware to use if application is run behind reverse proxy.

Documentation codecov Go Report Card Build Status

Usage

Import using:

import "github.com/chi-middleware/proxy"

Use middleware with default options (trusted from proxy 127.0.0.1 and trusts only last IP address provided in header):

    r := chi.NewRouter()
    r.Use(proxy.ForwardedHeaders())

Extend default options:

    r := chi.NewRouter()
    r.Use(proxy.ForwardedHeaders(
        proxy.NewForwardedHeadersOptions().
            WithForwardLimit(2).
            ClearTrustedProxies().AddTrustedProxy("10.0.0.1"),
    ))

Provide custom options:

    r := chi.NewRouter()
    r.Use(proxy.ForwardedHeaders(&ForwardedHeadersOptions{
        ForwardLimit: 1,
        TrustedProxies: []net.IP{
            net.IPv4(10, 0, 0, 1),
        },
    }))