Directiva ProxyPassReverse – Rescrierea antetelor de redirecționare din backend în Apache HTTP Server

Jurnale, Reverse Proxy și PHP-FPM Apache 2.0+ (mod_proxy)

Ajustează antetele Location, Content-Location și URI trimise de backend pentru a nu expune adresa internă de localhost utilizatorilor.

Sintaxă
ProxyPassReverse / http://127.0.0.1:3000/
ProxyPassReverseCookieDomain 127.0.0.1 dexblog.ro

Ce face Directiva ProxyPassReverse - Rescrierea antetelor de redirecționare din backend

Când o aplicație backend trimite o redirecționare HTTP (301 sau 302), ea tinde să pună propria adresă în antetul `Location:` (de exemplu `Location: http://127.0.0.1:3000/login`).

Dacă acest antet ajunge nemodificat în browserul utilizatorului, acesta va încerca să se conecteze la propriul calculator pe portul 3000 și va primi eroare de conexiune.

Directiva ProxyPassReverse interceptează antetul și îl rescrie automat cu domeniul public al serverului Apache (ex: `https://app.dexblog.ro/login`).

Exemple

Exemplul 1: Asigurarea redirecționărilor corecte prin Reverse Proxy

Menține domeniul public în antetele Location returnate de container.

ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/

Ieșire în terminal

Redirecționările de la localhost:8080 sunt convertite transparent la domeniul public.

Greșeli frecvente

  • Diferența de bare oblice finale între ProxyPass și ProxyPassReverse (dacă unul are ‘/’ la sfârșit, celălalt trebuie să aibă exact la fel).

Comenzi înrudite