As soluções para isso são:
RewriteCond %{SSL:SSL_PROTOCOL} ^SSLv3$
RewriteRule (.*) http://%{SERVER_NAME}/unsupported_browser.html [L,R=302]
Isso funciona para mim:)
Gostaria de redirecionar os usuários em nosso site se eles tentarem usar SSLv3 (se eu desativar o SSLv3 e um navegador como o IE6 aparecer, não consegui redirecioná-lo corretamente para uma versão http do nosso site com uma mensagem de erro - então eu gostaria de permitir SSLv3, mas redirecionar se eles estão usando para uma mensagem de erro).
Acho que quero algo como o seguinte:
RewriteCond %{SSL_PROTOCOL} SSLv3
RewriteRule (.*) http://%{SERVER_NAME}/mysite/unsupported_browser.html
Infelizmente, %{SSL_PROTOCOL}
parece estar sempre vazio. Estou usando o Apache 2.2.15 em Centos 6 32 bit. O SSL funciona muito bem para o site normalmente (por exemplo, https://mysite/mysite/unsupported_browser.html
funciona bem).
parece haver um monte de variáveis que devem estar disponíveis, mas estão vazias para mim ( link ).
Alguém tem alguma ideia do que eu posso fazer?
As soluções para isso são:
RewriteCond %{SSL:SSL_PROTOCOL} ^SSLv3$
RewriteRule (.*) http://%{SERVER_NAME}/unsupported_browser.html [L,R=302]
Isso funciona para mim:)
De acordo com a IBM [1], você deve ser capaz de interrogar a variável de ambiente ENV: SSL_PROTOCOL_VERSION, que deve ser exportada por mod_ssl.
Dito isto, pode ser melhor [2] suportar apenas o TLSv1 e posterior, e ter uma página de erro personalizada para informar que eles precisam mudar para um navegador que suporte TLS1 ou posterior.
[2]: melhor, como não ter que fazer reescrever decisões que são computacionalmente caras, quando o fall-through para uma página de erro estática é mais barato para o seu servidor
Tags mod-ssl apache-2.2