Назад | Перейти на главную страницу

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

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

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

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

Спасибо.