2016-02-02 14 views
5

Non ho idea del perché questo non funziona. Voglio solo reindirizzare tutto il dominio a www.maindomain.com e anche a http a https, cosa mi manca?Apache2 reindirizza a un altro dominio con ssl

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

# redirect without www to www 
RewriteCond %{http_host} ^maindomain.com [nc] 
RewriteRule ^(.*)$ https://www.maindomain.com [r=301,nc] 

# redirect another domain to www.maindomain.com  
RewriteCond %{HTTPS} off # this i was missing 
RewriteCond %{HTTP_HOST} ^(www\.)?anotherdomain.com [NC] 
RewriteRule ^(.*)$ https://www.maindomain.com [R=301,L] 
  1. http://maindomain.com a https:/www.maindomain.com/ funziona
  2. http://anotherdomain.com-https:/www.maindomain.com/ funziona
  3. https://anotherdomain.com-https:/www.maindomain.com/ fallisce
+0

strano, il commento con RewriteCond% {HTTPS} disattivato, il suggerimento era giusto ora funziona, ma la risposta è stata cancellata, così come volevo accettarlo, mi mancava un secondo RewriteCond nel 3 ° reindirizzamento –

risposta

1

http a https reindirizzamento per un altro dominio non è riuscita perché la regola non è presente la seguente riga :

RewriteCond %{HTTPS} off 

Prova:

# redirect another domain to www.maindomain.com  

RewriteCond %{HTTPS} off 

RewriteCond %{HTTP_HOST} ^(www\.)?anotherdomain.com [NC] 
RewriteRule ^(.*)$ https://www.maindomain.com [R=301,L] 
0

Si può provare questo:

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

basta copiare e incollare il codice sopra in file .htaccess, allora tutto il sito verrà reindirizzato a “https”, quando il il browser è aperto in modalità "http". Il browser viene semplicemente reindirizzato utilizzando la riscrittura dell'URL in .htaccess.