apache reescrever regras https para o diretório

1

Eu quero o apache para:

  1. redirecionar usuários http para https
  2. se eles acessarem o (s) http: //example.com/1234 redirecionar para / view / 1234

Eu experimentei sabores diferentes, mas não consigo trabalhar. Quando um usuário acessa o site, ele é redirecionado para https: //, mas não consigo redirecionar / {numic} para adicionar / visualizar /. A regra numérica estava funcionando bem até eu colocar o redirecionamento https.

Eu tentei com RewriteCond% {HTTPS} = on, mas isso causa 500 erros.

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://domain.example.org/$1 [R,L]
RewriteRule ^(\d+)$ https://domain.example.org/view/$1 [R=301,L]
    
por Sc0rian 11.04.2013 / 18:35

4 respostas

0

Obrigado pela sua ajuda.

Eu finalmente tenho que trabalhar. Eu usei o seguinte:

RewriteCond %{HTTPS} off
RewriteRule ^/?(.*) https://domain.example.org/$1 [R,L]
RewriteRule ^([0-9]+)/?$    https://%{HTTP_HOST}/view/$1    [NC,L] 

Assim, todas as solicitações numéricas adicionadas / visualizadas, qualquer tentativa de acessar o site com http: // será encaminhada para https: //. Parece funcionar bem.

    
por 11.04.2013 / 20:06
1

Substitua primeiro o RewriteCond por:

RewriteCond %{SERVER_PORT} !^443$
    
por 11.04.2013 / 19:08
1

Isso não funcionará para você?

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Tente isso para testar:

link

Ok, parece que você realmente quer algo assim:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{REQUEST_URI} /1234
RewriteRule (.*) https://%{HTTP_HOST}/view%{REQUEST_URI} [L]
    
por 11.04.2013 / 19:06
0

Esta será uma resposta improvisada, mas acredito que as regras de reescrita coincidam na ordem de chegada. Como a estrutura do caminho muda, aposto que seus usuários do link estão sendo redirecionados para o equivalente a https, mas sem a alteração do caminho. Tente mudar a ordem das regras e você chegará mais perto de uma solução completa.

Se isso não funcionar, me avise e eu inicio uma instância do Apache e veremos o que podemos trabalhar em conjunto.

    
por 11.04.2013 / 19:04