2016-11-02 6 views
1

Ich habe ein Problem, ich habe alle Optionen ausprobiert.Umleiten von http zu https mit Ausnahme eines Verzeichnisses

ich umleiten möchten alle Website http auf https außer einem Verzeichnis, dieses Verzeichnis Intranet:

RewriteCond %{HTTP:X-Forwarded-SSL} !on 
RewriteCond %{REQUEST_URI} ^\/(intranet) 
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R=301] 

RewriteCond %{HTTP:X-Forwarded-SSL} =on 
RewriteCond %{REQUEST_URI} !^\/(intranet) 
RewriteRule (.*) http://%{HTTP_HOST}/$1 [L,R=301] 

aber jetzt ist die ganze Webseite zeigen http und es doesn ‚t auf die https umleiten.

Können Sie mir helfen?

Dank

Antwort

0

die Regel nur einmal wie folgt verwenden,

RewriteCond %{REQUEST_URI} !^intranet 
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [L,R=301] 
+0

Dies macht die Bahn einen 404-Fehler hat – vaifer91

1

Ihre Regel wird alle Anfragen außer/Intranet zurück zu http wegen der negitive Rewritecondition Umleitung, entfernen Sie die ! Char von Ihrer 2. Regel. Versuchen:

RewriteEngine on 
RewriteCond %{HTTP:X-Forwarded-SSL} =on 
RewriteCond %{REQUEST_URI} !^/(intranet) 
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R=301] 


RewriteCond %{HTTP:X-Forwarded-SSL} =on 
RewriteCond %{REQUEST_URI} ^/(intranet) 
RewriteRule (.*) http://%{HTTP_HOST}/$1 [L,R=301] 

Alternativly könnten Sie dies versuchen:

RewriteEngine on 
RewriteCond %{REQUEST_SCHEME} =http 
RewriteCond %{REQUEST_URI} !^/(intranet) 
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R=301] 


RewriteCond %{REQUEST_SCHEME} =https 
RewriteCond %{REQUEST_URI} ^/(intranet) 
RewriteRule (.*) http://%{HTTP_HOST}/$1 [L,R=301] 
+0

Ja, aber es umleiten nicht auf https der Hauptseite und zeigen http im Haupt Seite – vaifer91

+0

@ Vaifer91 haben Sie Ihren Browser-Cache gelöscht? – starkeen

+0

Ja, Sie können in www.naturaselection.com sehen, ich brauche diese Hauptseite Umleitung zu https://www.naturaselection.com – vaifer91

Verwandte Themen