Esempi comuni sono nginx, HAProxy, Traefik, Caddy e Apache con mod_proxy. Il proxy termina TLS, distribuisce il carico, fa cache, aggiunge header di sicurezza e mette più servizi dietro un solo IP.
Il backend vede come client solo il proxy. Perché log, rate limit e protezione brute force conoscano l'IP reale, il proxy deve impostare X-Forwarded-For e X-Forwarded-Proto e l'applicazione deve fidarsi del proxy; in Nextcloud con trusted_proxies.
Errori comuni: l'applicazione genera link http:// perché non sa che TLS termina sul proxy; il proxy interrompe gli upload lunghi per timeout o limite di dimensione; oppure il backend è giù e il proxy risponde 502 Bad Gateway.
Esempio
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;