ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: При проксировании редиректа отдаётся IP-адрес клиента.



Hello!

On Tue, May 13, 2014 at 09:00:57PM +0300, Bogdan wrote:

> Добрый день.
> 
> Nginx 1.6.0, за ним апач.
> 
> Запрос к httpd:
> 
> GET /pma HTTP/1.1
> Host: host.tld
> 
> HTTP/1.1 301 Moved Permanently
> Date: Tue, 13 May 2014 17:45:39 GMT
> Server: Apache/2.2.15 (CentOS)
> Location: http://host.tld/pma/
> Content-Length: 236
> Connection: close
> Content-Type: text/html; charset=iso-8859-1
> 
> Аналогичный запрос к nginx:
> 
> GET /pma HTTP/1.1
> Host: host.tld
> 
> HTTP/1.1 301 Moved Permanently
> Server: nginx/1.6.0
> Date: Tue, 13 May 2014 17:47:33 GMT
> Content-Type: text/html; charset=iso-8859-1
> Content-Length: 233
> Connection: keep-alive
> Location: http://1.2.3.4/pma/
> 
> Где 1.2.3.4 - IP-адрес клиента который посылал запрос.
> HTML-часть в обоих случаях пропустил, заголовкам она соответствует.
> 
> Вот конфигурация виртуального хоста.
> 
> server {
>     listen 11.22.33.44:80 default_server;
>     server_name _;
>     access_log /var/log/nginx/default.access.log main;
> 
>     server_name_in_redirect off;
> 
>     location / {
>                 proxy_redirect off;
>                 proxy_set_header   X-Real-IP            $remote_addr;
>                 proxy_set_header   X-Forwarded-For
> $proxy_add_x_forwarded_for;
>                 proxy_set_header   X-Forwarded-Proto $scheme;
>                 proxy_set_header   Host                   $http_host;
>                 proxy_pass http://127.0.0.1:80;
>             }
>   }
> 
> Включение  server_name_in_redirect и proxy_redirect default какого-то
> видимого эффекта не оказали, всё равно в ответе фигурирует IP-адрес
> клиента. В качестве клиента использовал  telnet.

Я бы для начала убедился, что используется именно эта 
конфигурация.

Если судить по симптомам - редиректу на ip-адрес клиента - 
используется конфигурация, в которой написано что-то вроде

    proxy_set_header Host $remote_addr;

что и приводит к подобному эффекту.

-- 
Maxim Dounin
http://nginx.org/

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.