Redirect permanent / https://www.mysite.com/ exceptions

2

Eu tenho um site que é completamente servidorado através do ssl. Eu preciso permitir uma conexão externa em uma única página através de http embora.

Atualmente no meu http.conf eu tenho

<VirtualHost *:80>
..
Redirect permanent / https://www.mysite.com/
..
</VirtualHost>

Eu quero adicionar uma exceção aqui para uma determinada página que eu só quero servered e nunca através de um redirecionamento , se possível, como http ...

http://www.mysite.com/directory/page.php 

Eu tentei adicionar o seguinte, mas é claro que isso por si só funciona muito bem, mas em conjunto com o que eu tenho acima, ele cria loops de redirecionamento.

<VirtualHost *:443>
..
RewriteEngine on
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^/directory/page$ http://www.mysite.com/directory/page.php [R=301,L]
..
</VirtualHost>
    
por enfield 28.02.2013 / 01:08

2 respostas

1

Aqui está o que finalmente funcionou:

# Force HTTPS for entire site
RewriteCond %{HTTPS} !=on
RewriteCond %{THE_REQUEST} !^[A-Z]+\s/directory/page.*$
RewriteRule ^(.*)$ https://www.mysite.com/$1 [R=301,L]

# Force HTTP for a given page
RewriteCond %{HTTPS} =on
RewriteCond %{REQUEST_URI} ^/directory/page.*$
RewriteRule ^(.*)$ http://www.mysite.com/$1 [R=301,L]
    
por 01.03.2013 / 02:10
4

Tente isto:

RewriteEngine on

RewriteCond %{HTTPS} on
RewriteRule ^/directory/page$ http://www.mysite.com/directory/page.php [R=301,L]

RewriteCond %{HTTPS} on
RewriteRule ^/directory/page.php  http://www.mysite.com/directory/page.php [R,L]

RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^/directory/page.php
RewriteRule ^/(.*)  https://www.mysite.com/$1 [R,L]
    
por 28.02.2013 / 03:42