getting remot4e address
Igor Sysoev
is at rambler-co.ru
Wed Feb 27 00:00:34 MSK 2008
On Tue, Feb 26, 2008 at 12:52:56PM -0800, rkmr.em at gmail.com wrote:
> On Tue, Feb 26, 2008 at 12:08 PM, Igor Sysoev <is at rambler-co.ru> wrote:
> > On Tue, Feb 26, 2008 at 11:58:16AM -0800, rkmr.em at gmail.com wrote:
> >
> > > x-forwarded-for enabled in the haproxy configuration.
> > > How do I configure nginx so that my fastcgi backends get this IP
> > > address as the remote ip address and not the ip address of the
> > location / {
> > set $addr $remote_addr;
> >
> > if ($http_x_forwarded_for ~ "(^|,)\s*(\d+\.\d+\.\d+\.\d+)\s$") {
> > set $addr $1;
> > }
> >
> > ...
> > fastcgi_param REMOTE_ADDR $addr;
>
> hi igor,
> thanks for your reply.
> i tried what you gave, and i still get only the ip address of the
> haproxy in my backends,
> how to fix?
> thanks
>
> this my config..
> location / {
> root /home/mark/work/pop;
> fastcgi_pass backend_pop;
> include /home/mark/work/infrastructure/nginx_fastcgi.conf;
> }
>
> file nginx_fastcgi.conf;
> set $addr $remote_addr;
>
> if ($http_x_forwarded_for ~ "(^|,)\s*(\d+\.\d+\.\d+\.\d+)\s$") {
My mistake:
- if ($http_x_forwarded_for ~ "(^|,)\s*(\d+\.\d+\.\d+\.\d+)\s$") {
+ if ($http_x_forwarded_for ~ "(^|,)\s*(\d+\.\d+\.\d+\.\d+)\s*$") {
> set $addr $1;
> }
>
> fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
> fastcgi_param PATH_INFO $fastcgi_script_name;
> fastcgi_param QUERY_STRING $query_string;
> fastcgi_param CONTENT_TYPE $content_type;
> fastcgi_param CONTENT_LENGTH $content_length;
> fastcgi_param REQUEST_METHOD $request_method;
> #fastcgi_param REMOTE_ADDR $remote_addr;
> fastcgi_param REMOTE_ADDR $addr;
> fastcgi_param REMOTE_PORT $remote_port;
> fastcgi_param SERVER_PROTOCOL $server_protocol;
> fastcgi_param SERVER_ADDR $server_addr;
> fastcgi_param SERVER_PORT $server_port;
> fastcgi_param SERVER_NAME $server_name;
>
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list