Caddy Cbrotli Save

A Caddy module providing support for the Brotli compression format.

Project README

Caddy Brotli Module

This module for the Caddy web server provides support for the Brotli compression format.

It uses the reference implementation of Brotli (written in C), through the Go module provided by Google.

Tests Go Reference

Install

  1. Install cbrotli. On Mac run brew install brotli. On Debian and Ubuntu, run apt install libbrotli-dev.

  2. Then create your Caddy build:

    CGO_ENABLED=1 \
    xcaddy build \
        --with github.com/dunglas/caddy-cbrotli
    

    On Mac, be sure to adapt the paths in CGO_LDFLAGS and CGO_CFLAGS according to your Brotli installation:

    CGO_LDFLAGS="-L/opt/homebrew/lib/" \
    CGO_CFLAGS="-I/opt/homebrew/include/" \
    CGO_ENABLED=1 \
    xcaddy build \
        --with github.com/dunglas/caddy-cbrotli
    

Usage

Add the br value to the encode directive in your Caddyfile.

Example:

localhost

encode zstd br gzip

file_server

Alternatively, you can configure the quality (from 0 to 11, defaults to 6) and the base 2 logarithm of the sliding window size (from 10 to 24, defaults to auto):

Example:

localhost

encode {
    br 8 15
}

file_server

Cgo

This module depends on cgo. If you are looking for a non-cgo (but more CPU-intensive) alternative, see the github.com/ueffel/caddy-brotli module.

Credits

Created by Kévin Dunglas and sponsored by Les-Tilleuls.coop.

Open Source Agenda is not affiliated with "Caddy Cbrotli" Project. README Source: dunglas/caddy-cbrotli
Stars
31
Open Issues
0
Last Commit
3 months ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating