reverse-proxy для удаленного httpd Centos 6 (vestacp+nginx+apache)
Posted: Tue Jun 19, 2018 10:03 am
Есть сервер в России ip - 1.1.1.1
на него указаны A-записи домена domain.com
На нем nginx с таким конфигом:
Сайт находится на сервере в Германии ip
2.2.2.2 (httpd 2.2.2.2:8080)
Сайт открывается нормально, НО $_SERVER['REMOTE_ADDR'] выдает ip российского сервера
1.1.1.1
а не IP ПОСЕТИТЕЛЯ
как сделать, чтобы апач 2.2.2.2:8080 в переменную $_SERVER['REMOTE_ADDR'] подставлял верный ip?
тот, который есть в переменной
[HTTP_X_REAL_IP] => x.x.x.x
[HTTP_X_FORWARDED_FOR] => x.x.x.x
вот print_r $_SERVER по заходу на domain.com
на него указаны A-записи домена domain.com
На нем nginx с таким конфигом:
Code: Select all
server {
listen 1.1.1.1:80;
server_name domain.com www.domain.com;
location / {
proxy_pass http://2.2.2.2:8080;
}
...
}
2.2.2.2 (httpd 2.2.2.2:8080)
Сайт открывается нормально, НО $_SERVER['REMOTE_ADDR'] выдает ip российского сервера
1.1.1.1
а не IP ПОСЕТИТЕЛЯ
как сделать, чтобы апач 2.2.2.2:8080 в переменную $_SERVER['REMOTE_ADDR'] подставлял верный ip?
тот, который есть в переменной
[HTTP_X_REAL_IP] => x.x.x.x
[HTTP_X_FORWARDED_FOR] => x.x.x.x
вот print_r $_SERVER по заходу на domain.com
Code: Select all
...
[HTTP_X_REAL_IP] => x.x.x.x
[HTTP_X_FORWARDED_FOR] => x.x.x.x
[HTTP_HOST] => domain.com
[SERVER_SOFTWARE] => Apache/2.2.15 (CentOS)
[SERVER_NAME] => domain.com
[SERVER_ADDR] => 2.2.2.2
[SERVER_PORT] => 80
[REMOTE_ADDR] => 1.1.1.1
[DOCUMENT_ROOT] => /home/user/web/domain.com/public_html
...