Mam serwer Apache za modułem równoważenia obciążenia (prosta Amazon). Chcę przekierować każdy przychodzący ruch, który nie jest 443 na 443. Wolałbym, aby używał tylko jednego wirtualnego hosta Apache. Próbuję więc wykryć, że nagłówek HTTP_X_FOR_ARDWARDED_PORT nie ma wartości 443.
Sprawdziłem dokumenty RewriteCond i działa ono tylko z ograniczonym zestawem nagłówków HTTP.
Zasadniczo to, co robię, to:
<VirtualHost *:80>
ServerName www.example.com
RewriteEngine On
RewriteCond %{HTTP_X_FORWARDED_PORT} !=443
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
....
</VirtualHost>
Ale RewriteCond nie rozpoznaje HTTP_X_FORWARDED_PORT.
Czy jest jakiś inny sposób na osiągnięcie tego (za pomocą tylko jednego VirtualHost)? (jakiś rodzaj przychodzącej kontroli nagłówka?)
Dzięki, Lance
źródło
RewriteCond %{HTTP:X-Forwarded-For} !=123.45.67.89