La définition de apache.org dit:
Cette directive permet à Apache httpd d'ajuster l'URL dans les en-têtes Location, Content-Location et URI sur les réponses de redirection HTTP. Ceci est essentiel lorsque Apache httpd est utilisé comme proxy inverse (ou passerelle) pour éviter de contourner le proxy inverse à cause des redirections HTTP sur les serveurs principaux qui restent derrière le proxy inverse.
Seuls les en-têtes de réponse HTTP spécifiquement mentionnés ci-dessus seront réécrits. Apache httpd ne réécrira pas les autres en-têtes de réponse, pas plus qu'il ne réécrira par défaut les références URL dans les pages HTML. Cela signifie que si le contenu mandaté contient des références URL absolues, ils contournent le proxy. Pour réécrire le contenu HTML pour correspondre au proxy, vous devez charger et activer mod_proxy_html.
chemin est le nom d'un chemin virtuel local; url est une URL partielle pour le serveur distant. Ces paramètres sont utilisés de la même manière que pour la directive ProxyPass.
Quelqu'un peut-il m'expliquer comment cela fonctionne? En général, que fait cette directive?
la source
does a redirect
signifie réellement. Répond-il avec une réponse de redirection HTTP (301/302)?ProxyPassReverse
directive garantit simplement que la réponse HTTP 3xx inclut l'URI correct en termes de serveur proxy inverse.Dans le guide du proxy inverse Apache 2.4 :
Si vous avez un client et 2 serveurs, Proxy et Origin, où Origin fait le travail réel (génération de réponse) et Proxy se contente de demander des procurations à Origin, une bonne architecture de serveur est lorsque
Si Origin ne connaît pas le proxy, il peut arriver qu'Origin renvoie au client une redirection HTTP (HTTP 301 ou 302) via Proxy, qui pointe directement vers lui-même, Origin. Et c'est un problème parce que le navigateur contactera directement Origin au prochain tour, ce qui violerait le point 2.
Au fur et à mesure que les réponses de redirection HTTP reviennent au proxy vers le client, le proxy peut / doit modifier ces redirections afin que l'emplacement pointe toujours vers le proxy. De cette façon, une application autonome exécutée sur Origin sans connaître le proxy peut générer n'importe quelle URL de redirection tant que le proxy est bien configuré.
la source