Welcome! Log In Create A New Profile

Advanced

задать proxy_set_header если X-Real-IP не равен тому то

March 13, 2013 12:49AM
Добрый день.

Есть сайт за антиддосером.
debian 6.06, libapache2-mod-rpaf nginx/1.2.7 externeal_ip:80 + apache2 127.0.0.1:81

Если запрос приходит через антидоссера - поля X-Forwarded-for и X-Real-IP уже установлены

location / {
client_max_body_size 10m;
proxy_pass http://127.0.0.1:81/;
proxy_set_header Host $host;
proxy_connect_timeout 60;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_redirect off;

Если запрос идет мимо антиддосера апачу прилетает X-Real-IP и X-Forwarded-for 127.0.0.1

Можно ли задать X-Real-IP и X-Forwarded-for в зависимости от $remote_addr ?

Пытаюсь сделать через map и if

map $remote_addr $antiddos.net {
default no;
antiddosip yes;
}

.
.
.

location / {
client_max_body_size 10m;
proxy_pass http://127.0.0.1:81/;
if ($antiddos.net = no) {
proxy_set_header X-Forwarded-for $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
}
proxy_set_header Host $host;
proxy_connect_timeout 60;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_redirect off;
proxy_set_header Connection close;
proxy_pass_header Content-Type;
proxy_pass_header Content-Disposition;
proxy_pass_header Content-Length;
}
}

На что начинает ругаться nginx: [emerg] "proxy_set_header" directive is not allowed here in номер строки proxy_set_header X-Forwarded-for $remote_addr;

что я не правильно делаю, подскажите?
Subject Author Posted

задать proxy_set_header если X-Real-IP не равен тому то

cilrill March 13, 2013 12:49AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 124
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready