Q:

Redirecionar HTTP para HTTPS no .htaccess com Let's Encrypt

Não consigo de forma alguma testar se o meu endereço encontra-se em https quando o let's encrypt está instalado...
Alguma alma caridosa poderia me auxiliar a redirecionar para o https?
Eu tenho instalado na minha hospedagem UOLHost (Plataforma: Linux, Apache: Versão 2.4) o let's encrypt... E eu não sei se existe alguma relação direta (ainda estou começando minha vida em programação e sei muito pouco do inglês) entre o comando:
RewriteCond %{HTTPS} off
E a validação let's encrypt... Eu acredito deva ser algo relacionado a ao tipo de validação que esta sendo feita pelo encrypt que impede que o comando RewriteCond verifique o host...
Atualmente esta assim meu .htaccess
<files ~ "^.*\.([Hh][Tt][Aa])">
    order allow,deny
    deny from all
    satisfy all
</files>
Options -Indexes
Options +FollowSymLinks
ErrorDocument 400 /redirects/400.html
ErrorDocument 401 /redirects/401.html
ErrorDocument 403 /redirects/403.html
ErrorDocument 404 /redirects/404.html

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /
    #Tentativas RewriteCond %{HTTPS} (FALHA TUDO QUE TENTEI)
    RewriteCond %{HTTP_HOST} ^exemplo\.com\.br [NC] #verifica se falta www (MENOR IDEIA DO PQ DO NC)
    RewriteRule ^(.*)$ https://www.exemplo.com.br/$1 [R=301,L] #301 Moved Permanently
    #Atualmente consegue redirecionar de exemplo.com.br para https://www.exemplo.com.br
</IfModule>

Tentei configurar:
RewriteCond %{HTTPS} off [OR] #não funcionou
RewriteCond %{HTTPS} =off [OR] #não funcionou
RewriteCond %{SERVER_PORT} 80 [OR] #não funcionou
RewriteCond %{SERVER_PORT} =80 [OR] #não funcionou
RewriteCond %{HTTP_HOST} ^exemplo\.com\.br [NC]
RewriteRule ^(.*)$ https://www.exemplo.com.br/$1 [R=301,L]

sempre retorna o erro:
"Esta página não está funcionando
Redirecionamento em excesso por www.exemplo.com.br
Tente limpar os cookies.
ERR_TOO_MANY_REDIRECTS"
(obs.:) Eu coloquei a prova minha teoria e desinstalei o let's encrypt...
RewriteCond %{HTTPS} =off [OR] #funcionou
RewriteCond %{SERVER_PORT} =80 [OR] #funcionou

Funcionou o redirecionamento mas obviamente não resolve meu problema pois não tenho um certificado sem o let's encrypt instalado.
O problema esta no trâmite da validação do let's encrypt... Preciso encontrar uma outra forma de redirecionar, talvez sem utilizar o RewriteRule.
Outra discussão do mesmo tópico
https://cursos.alura.com.br/forum/topico-redirecionar-http-https-com-htaccess-39055 

A:

Também uso Let's Encrypt e tive um problema semelhante, mas resolvi no VirtualHosts do Apache.
Como no seu caso, você só tem acesso ao .htaccess, testei alguns métodos em um servidor meu, e trouxe o que funcionou melhor.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

# Verifica www
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [L,R=301]

# Verifica requisições POST
RewriteCond %{REQUEST_METHOD} !^POST$

# Se estiver recebendo uma requisição http de um proxy...
RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR]

#...ou só uma requisição diretamente do cliente
RewriteCond %{HTTP:X-Forwarded-Proto} =""
RewriteCond %{HTTPS} !=on

# Redireciona para a versão HTTPS
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [L,R=301]

</IfModule>

Acredito que essa solução funcione também para o seu caso.

