Nginx

может проксировать не только http, но и tcp/udp/ssh.. трафик

Настройка по кнопочкам: проект NginxConfig — https://do.nginxconfig.io/

Path Traversal in misconfig aliases: https://www.acunetix.com/vulnerabilities/web/path-traversal-via-misconfigured-nginx-alias/

Сжатие

  • gzip + brotli

Поддержка HTTP/2

Позволяет прогружать контент в кучу потоков (для HTTP/1.1 браузер ограничивает количество потоков)

Preload and HTTP/2 Push

Preload — подгружает файлы статики еще в момент загрузки заголовков (как то подсовывает)

HTTP/2 Push (объявлено deprecated, но еще поддерживаются)

Проксирование трафика на другой сервис или контейнер

somedir/
    nginx/
        certs/  — это серт для TLS (может быть любой вообще, лишь бы был)
            cert.crt
            cert.key
            domain.csr  
        nginx.conf
    stunnel/  — proxy-server для построения туннеля (может быть любой сервис, например flask)
        certs/
            ...
        Dockerfile
        stunnel.txt
    docker-compose.yml

nginx.conf: по факту говорим, что в зависимости от Host-заговка трафик будет перенаправлен либо на http либо на stunnel (в этом примере)

docker-compose.yml:

Last updated