Table des matières

Apache / Reverse Proxy

Exemple

        <Location /api/>
                ProxyPass http://api.example.net/
                ProxyPassReverse http://api.example.net/
        </Location>

Ajouter l'header X-Forwarded-User

La variable REMOTE_USER n'est pas défini par Apache dans l'environnement se qui complique un peu la chose. L'astuce est d'utiliser mod_rewrite qui y a accès pour définir une variable d'environnement RU que l'on utilise ensuite pour l'ajouter l'header :

        <Location /api/>
                ProxyPass http://api.example.net/
                ProxyPassReverse http://api.example.net/
                require valid-user

                ## Add X-Forwarded-User header

                # REMOTE_USER not accessible in env, use mod_rewrite to define RU env var
                RewriteEngine On
                RewriteCond %{REMOTE_USER} (.+)
                RewriteRule ^.*$ - [E=RU:%1]

                # Add X-Forwarded-User header from RU env var
                RequestHeader add X-Forwarded-User %{RU}e
        </Location>