У меня есть эта настройка в течение многих лет: centos5, nginx, apache Nginx настроен на прокси как этот proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://localhost:8000;

Я не знаю, что случилось, или что я, возможно, где-то сделал, но внезапно, чуть более месяца назад, установка перестала работать: как в apache, получает локальный IP-адрес прокси вместо фактического реального IP-адреса клиента , Я только заметил это сегодня, поэтому я не знаю, что я мог сделать. Я проследил журналы http, где я зарегистрировал IP-адрес клиента, и таким образом я знаю дату и время, когда произошло это изменение. Журналы Yum не показывают ничего вокруг этой даты. Я сделал ошибку, сначала попробовав некоторые конфигурации, прежде чем смотреть на временные метки файла конфигурации, так что информация теряется. Но я не думаю, что я изменил конфиг.

Есть идеи, что могло пойти не так?

Я попытался заменить x-forwarded-for на proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Host $remote_addr;

а также добавил set_real_ip_from 192.168.0.3; real_ip_header X-Real-IP; real_ip_recursive on; в верхней части моего http config в nginx.conf, но, похоже, ничего не работает.

Благодарю.

1 ответ1

0

После долгих копаний кажется, что проблема была вызвана некоторыми изменениями, связанными с IP. (Справочная информация: nginx и apache находятся на одном сервере.)

В частности, конфигурация mod_rpaf имела RPAF_ProxyIPs 127.0.0.1 с 2016 года, когда я ее настраивал. Но каким-то образом в начале апреля сервер установил связь с apache не по 127.0.0.1, а по IP-адресу локальной сети сервера (192.168.0.3), добавив, что в RPAF_ProxyIPs возникла проблема.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .