Compile Nginx with Brotli compression

Install build dependincies

Ubuntu/Debian

sudo apt update

sudo apt install -y build-essential git libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev cmake

RedHat/AlmaLinux/RockyLinux sudo dnf groupinstall "Development Tools" -y

sudo dnf install pcre-devel zlib-devel openssl-devel libtool git -y

Download Ngx-Brotili

git clone --recursive https://github.com/google/ngx_brotli.git brotli

cd ..

Download Nginx

wget https://nginx.org/download/nginx-1.30.6.tar.gz #Nginx > 1.9.11

Start compiling

tar xf nginx-1.30.6.tar.gz

cd nginx-1.30.6

./configure [..... your compile option .....] --add-module=../brotli

make

make install

Brotli configuration

brotli on;

brotli_comp_level 5;

brotli_min_length 256;

brotli_static on;

brotli_types text/plain text/css text/xml text/javascript application/javascript application/json application/xml application/rss+xml application/atom+xml application/manifest+json image/svg+xml font/ttf font/otf;

Then restart your nginx and test with following command curl -s -I -H "Accept-Encoding: br" https://domain.com | grep content-encoding

You would get content-encoding: br