2009-08-14 16 views
5

Ich möchte dies tun: wenn sie tun https://example.com Ich möchte sie umleiten zu https://www.example.com (fügen Sie die www.). Ich habe Unmengen von Dingen versucht, ohne Erfolg.Apache ssl Umleitung mit mod_rewrite

Redirect https://example.com/<anything> to https://www.example.com/<anything> 
RewriteCond %{HTTP_HOST} ^example\.com [NC] 
RewriteCond %{SERVER_PORT} =443 
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L] 

Dieser Code ist in httpd.conf aber hat in .htaccess und ssl.conf versucht worden.

Kann jemand helfen?

Antwort

1

Haben Sie das Rewriting über RewriteEngine On eingeschaltet oder ist mod_rewrite installiert? Andernfalls sollte Ihr Code funktionieren.

1

Die Redirect directive funktioniert nur auf den URL-Pfad. Aber es ist möglich mit mod_rewrite. Diese Regel wird in jeder Konfigurationsdatei arbeiten:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^example\.com$ 
RewriteCond %{SERVER_PORT} =443 
RewriteRule^https://www.example.com%{REQUEST_URI} [L,R=301] 

Und nicht zu vergessen die obligatorische RewriteEngine on wie (Residuum schon gesagt) (1278432 # 1278432).

0

verwenden:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L] 

Natürlich nicht vergessen "www.example.com" mit Ihrer eigenen Domain zu ersetzen.

+0

Wenn Sie genau auf den OP schauen, wird Port 80 überhaupt nicht benutzt. –