Como escrever uma regra do Apache Rewrite para redirecionar solicitações para um diretório para SSL?

1

Estou tentando redirecionar todas as solicitações em um diretório em um servidor para https. Eu tentei o seguinte em uma configuração separada (dentro do diretório config.d), e em um arquivo .htaccess. Nem trabalhe, mas não cause erros.

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

Quando tentei em um arquivo de configuração, o acima estava dentro de um bloco.

EDITAR
Aqui está o meu código no arquivo de configuração:

<Directory "/var/www/html/ssl_dir/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride All
    <RequireAny>
        Require ip xx.xx.xx.0/24
        Require ip ::1
    </RequireAny>
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{HTTPS} !=on
        RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    </IfModule>  
</Directory>
    
por Roger Creasy 03.10.2017 / 19:23

1 resposta

0

Quase lá!

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

link

Minha primeira resposta usou equivocadamente SERVER_NAME, que não é necessariamente igual a HTTP_HOST. O nome do servidor pode ser qualquer coisa e muito diferente do nome de domínio usado para acessá-lo.

    
por 03.10.2017 / 19:31