It looks to me like it is not exposed in mod_rewrite.

I'd suggest opening a bug "mod_rewrite doesn't expose client_addr".

For consistency, I'd suggest CONN_REMOTE_ADDR as in the expression parser.

On Thu, Jan 30, 2014 at 11:02 AM, Reindl Harald <[email protected]> wrote:
> Hi
>
> may i ask if there is a piece missing in the docs,
> maybe even there and i don't spot it, or mod_rewrite
> can not distinguish between %a and %{c}a currently
>
> the idea is that the proxy has 127.0.0.1 and does SSL-termination
> so it should use unecrypted connections to httpd, but in case
> the connection comes from a different IP mod_rewrite is supposed
> to redirect the request as shown below to https
>
> without mod_remoteip the mod_rewrite snipped works as expected
> so only a replacement for %{REMOTE_ADDR} would be needed that
> uses the underlying peer IP address of the connection
>
> <IfModule mod_remoteip.c>
>  RemoteIPHeader X-Forwarded-For
>  RemoteIPInternalProxy 127.0.0.1
> </IfModule>
> <IfModule mod_rewrite.c>
>  RewriteEngine on
>  RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1
>  RewriteCond %{HTTPS} off
>  RewriteRule (.*) https://www.example.com%{REQUEST_URI}
> </IfModule>
>
> http://httpd.apache.org/docs/2.4/mod/mod_rewrite.html
>
> http://httpd.apache.org/docs/2.4/mod/mod_log_config.html
> %a      Client IP address of the request (see the mod_remoteip module).
> %{c}a   Underlying peer IP address of the connection (see the mod_remoteip 
> module)
>
> thank you for feedback
>
>



-- 
Eric Covener
[email protected]

Reply via email to