WordPress показывает IP-адрес прокси-сервера с помощью mod_remoteip

WordPress показывает IP-адрес прокси-сервера с помощью mod_remoteip

Я уже настраивал это раньше, и это работает на других серверах, но я не могу понять, почему это не работает в этом случае, хотя у меня есть возможная теория. Все это находится в Amazon Web Services.

Итак, в этом случае мы размещаем основной сайт на сервере Windows с использованием IIS 8. Блог находится на другом сервере, работающем под управлением Ubuntu/Apache 2.4.6 для размещения WordPress. Основной сайт находится в VPC для поддержки нескольких IP-адресов. Блог находится за пределами VPC.

Другие настройки (которые работают) используют nginx в качестве обратного прокси-сервера вместо IIS и имеют прокси и сервер в одном и том же VPC. Имеет ли это значение?

Из рабочей конфигурации:

LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so

RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 172.31.x.x/32

Нерабочая конфигурация:

LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so

RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 54.2x.x.x

Я также пробовал разные варианты, такие как:

RemoteIPTrustedProxy 54.2x.x.x # tried /32 and /24
RemoteIPInternalProxy 54.x.x.x/32 # also tried /24
RemoteIPTrustedProxy www...

Используя тестовую страницу PHP, чтобы проверить ее работоспособность, я вижу следующее print_r($_SERVER);:

[HTTP_X_FORWARDED_BY] => www.....
[HTTP_X_FORWARDED_FOR] => x.x.x.x:x
[SERVER_ADDR] => 10.230.x.x
[SERVER_PORT] => 80
[REMOTE_ADDR] => 54.2x.x.x

И вывод функции PHP getheaders:

[X-Forwarded-By] => www....
[X-Forwarded-For] => x.x.x.x:x

Theдокументациядля mod_remoteipсписков 172.16/12как IP-адрес интрасети. Действительно ли модуль отказывается работать правильно, потому что не обнаруживает блок интрасети? Я также не смог найти ничего об этом в журнале ошибок.

Кажется глупым, что это может работать таким образом, но это единственная оставшаяся теория, которая имеет смысл.

Также следует отметить, потому что я знаю, что кто-то спросит: мы настроили VPC после того, как настроили сервер блога, и мы просто не провели работу по его перезапуску внутри VPC. Я пытался заставить это работать без него, но если проблема в этом, то мы рассмотрим возможность сделать это.

Спасибо.

Связанный контент