Чиним ошибку 400 Bad Request с помощью mod_rpaf у BitrixEnv

, Михаил

Воспользуемся замечательнейшим модулем https://github.com/gnif/mod_rpaf который протестирован и успешно эксплуатируется в на многих серверах

Собираем модуль:

yum groupinstall "Development Tools"
yum install httpd-devel
wget -O /tmp/mod_rpaf.c https://raw.githubusercontent.com/gnif/mod_rpaf/stable/mod_rpaf.c
apxs -c -i /tmp/mod_rpaf.c

Далее создаём /etc/httpd/bx/custom/rpaf.conf

LoadModule              rpaf_module modules/mod_rpaf.so
RPAF_Enable             On
RPAF_ProxyIPs           127.0.0.1 Ваш.IP.Сервера
RPAF_SetHostName        On
RPAF_SetHTTPS           On
RPAF_SetPort            On
RPAF_ForbidIfNotProxy   Off

И не забываем выключить remoteip в файле /etc/httpd/conf.modules.d/00-base.conf и удалить файл /etc/httpd/bx/conf/mod_rpaf.conf

На выходе получим

[root@divasoft ~]# apachectl -M | grep -E 'remoteip|rpaf'
 rpaf_module (shared)

Перезапускаем httpd


В файле /etc/nginx/bx/site_enabled/ssl.s1.conf меняем строки

proxy_set_header   Host   $host:443;
proxy_set_header   HTTPS   YES;

На

proxy_set_header   Host   $host;
proxy_set_header   X-Forwarded-Proto   $scheme;
proxy_set_header   X-Forwarded-Port   $server_port;

В файле /etc/nginx/bx/site_enabled/s1.conf меняем строки

proxy_set_header   Host   $host:80;

На

proxy_set_header   Host   $host;
proxy_set_header   X-Forwarded-Proto   $scheme;
proxy_set_header   X-Forwarded-Port   $server_port;

Перезапускаем nginx

Итоговый блок будет выглядеть как

proxy_set_header   X-Real-IP   $remote_addr;
proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
proxy_set_header   Host   $host;
proxy_set_header   X-Forwarded-Proto   $scheme;
proxy_set_header   X-Forwarded-Port   $server_port;