Pergunta

Gostaria de redirecionar todas as conexões de htt_p: //www.example.com/abc.html para http_s: //www.example.com/abc.html. Quais comandos mod_alias ou mod_rewrite funcionariam para isso? Eu tentei:

RewriteEngine on
RewriteCond %{HTTPS} =off
RewriteRule $abc\.html^ https://www.example.com/abc.html [R]

em .htaccess e httpd.conf, mas isso não funciona. Funciona se a primeira string no rewriture for mais alguma coisa (como abz.html), mas não se for abc.html. ABC.HTML é um arquivo real no servidor (não outro redirecionamento). As opções seguem os links de siga está presente na diretiva de diretório apropriada.

Muito Obrigado.

Foi útil?

Solução

Algo como as seguintes seguintes permitirá redirecionar as páginas não-SSL para versões SSL (assumindo que você está executando o SSL na porta 443):

RewriteEngine on

# Limited redirects
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} ^/abc\.html$ [OR,NC]
RewriteCond %{REQUEST_URI} ^/def\.html$ [OR,NC]
RewriteCond %{REQUEST_URI} ^/ghi\.html$ [NC]
RewriteRule ^/(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

A bandeira [ou] após o reescrita é literalmente que "ou", e é por isso que a última condição não o tem

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top