Хорошо .. это довольно странно, но мне нужно заменить значение X-forwarded-for.
Мы используем SAP B1, и по какой-то причине ему нужно, чтобы x-forwarded-for содержал только одну строку "https://sap.domain.tld:443"
и только это значение. Ни других хостов, ни запятой. Именно так.
Теперь я использую различные прокси-серверы и облачную вспышку, таким образом добавляя некоторые значения в X-forwarded - для этого мне нужно удалить, чтобы получить доступ к SAP B1 Web Access. Мне нужно удалить все эти значения.
Ниже моя конфигурация в apache:
SSLEngine On
SSLCertificateFile /etc/ssl/crt/sap.crt
SSLCertificateKeyFile /etc/ssl/private/4096.key
SSLCACertificateFile /etc/ssl/ca/ca.crt
SSLProxyEngine On
SSLProxyCheckPeerCN off
SSLProxyVerify none
SSLProxyCheckPeerName off
SSLProtocol -all +TLSv1.2 +TLSv1.1 +TLSv1
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA$
ProxyPreserveHost On
ProxyVia full
ProxyPass / https://10.1.1.1:8100/
ProxyPassReverse / https://10.1.1.1:8100/
ProxyAddHeaders off
RequestHeader unset X-forwarded-for
RequestHeader set X-Forwarded-For "https://sap.domain.tld:443"
я добавил ProxyAddHeaders off
но apache по-прежнему добавляет новый X-Forwarded-For. Как их все удалить?
Недавно я столкнулся с подобной проблемой. Для меня оказалось, что ProxyAddHeaders off
не работал в <VirtualHost>
контекст (несмотря на документы). После помещения директивы в <Location>
контекст Apache перестал добавлять X-Forwarded-*
заголовки, как ожидалось.
Ваш может выглядеть так ...
<Location />
...
ProxyPass https://10.1.1.1:8100/
ProxyPassReverse https://10.1.1.1:8100/
ProxyAddHeaders off
RequestHeader unset X-forwarded-for
RequestHeader set X-Forwarded-For "https://sap.domain.tld:443"
</Location>