Я переношу некоторые сайты с одного сервера на другой. Чтобы избежать простоев, я проксирую перемещенные сайты через старый сервер во время обновления DNS.
На исходном (прокси) сервере у меня есть следующее:
<VirtualHost *:80>
Servername www.mydomain.com
DocumentRoot /var/www/mydomain.com
ProxyPass / http://my-new-server-ip-address/
ProxyPassReverse / http://my-new-server-ip-address/
ProxyPreserveHost On
</VirtualHost>
На новом сервере я использую mod_remoteip (Apache версии 2.4.7) и имею следующее:
<VirtualHost *:80>
Servername www.mydomain.com
DocumentRoot /var/www/mydomain.com
RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy my-old-server-ip-address
LogFormat "%a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" (proxy)" proxy
SetEnvIf X-Forwarded-For "/.*/" forwarded
# just testing for anything here!!
CustomLog /var/log/mydomain.com/access.log combined env=!forwarded
CustomLog /var/log/mydomain.com/access.log proxy env=forwarded
</VirtualHost>
Я пытаюсь добиться того, чтобы при проксировании запроса использовался другой журнал, а не прямой запрос с нового сервера. Журнал «прокси» никогда не запускается, что заставляет меня думать, что заголовок «X-Forwarded-For» не отправляется исходным сервером. Документы apache Вот заявить, что "X-Forwarded-For" - один из установленных заголовков.
Я знаю, что мне не хватает чего-то очевидного, но любая помощь будет принята с благодарностью!