2016-06-02 2 views
0

Ich bin eine einfache Rails-Anwendung auf Port 3000 ausgeführt. Ich habe es umgekehrt zu Apache Port 80 mit mod_rewrite aktiviert. Wenn ich über http und https zugreife, funktioniert die Anwendung gut. Jetzt möchte ich alle HTTP-Anfragen an https umleiten. Ich habe bereits eine .htaccess-Datei unter dem öffentlichen Ordner der Rails-Anwendung, aber es scheint nicht zu funktionieren.Umleiten zu https eine Schiene Anwendung Reverse Proxy mit Apache mit. Htaccess

RewriteCond %{SERVER_PORT} 80 [OR,NC] 
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC] 
RewriteRule ^(.*)$ https://domain.com/$1 [R=301,L] 

Domain.com verweist auf meine Domain. Außerdem möchte ich nicht, dass meine Subdomains zu https umgeleitet werden. Wie erreiche ich das?

Antwort

1

die OR-Bedingung zu entfernen und versuchen:

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

das Entfernen oder Zustand ist nicht hilfreich – sureshprasanna70

+0

verwenden Was tun Du meinst mit "ist nicht hilfreich"? – starkeen

+0

http wird nicht zu https umgeleitet – sureshprasanna70

0

Um zu überprüfen, ob https aktiviert ist, Sie RewriteCond mit der HTTPS Variable

RewriteCond %{HTTPS} off 
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L] 
+0

Sollte ich den Inhalt in meinem .htaccess mit diesem ersetzen oder anhängen? – sureshprasanna70

+0

Dies ist nur für die Umleitung auf https. Wenn du andere Regeln in deiner Konfiguration hast, behalte sie. Wenn Sie "www." entfernen möchten, benötigen Sie zusätzliche Regeln. –