2010-11-11 14 views
14

Ich möchte meine .htaccess-Datei so ändern, dass, wenn jemand auf meine Website kommt, ohne www eingeben die Website leitet sie immer an die www-Version. Wenn meine URL beispielsweise www.abc.com lautet und sie abc.com eingeben, möchte ich sie auf abc.com umleiten.wie zu ändern .htaccess-Datei immer auf www umleiten

Hier ist meine aktuelle .htaccess-Datei:

<IfModule mod_rewrite.c> 
    RewriteBase/
    RewriteEngine on 
    RewriteRule ^$ app/webroot/ [L] 
    RewriteRule (.*) app/webroot/$1 [L] 
</IfModule> 

Normalerweise weiß ich, wie die Umleitung zu tun, aber im mit Problemen, da es bereits die wenige Zeilen drin hat. In

RewriteCond %{HTTP_HOST} ^example\.com$ 
RewriteRule ^(.*) http://www.example.com/$1 [R=301] 

Antwort

18

so etwas wie dieses Add unmittelbar nach RewriteEngine on der folgende Eintrag in Ihrer .htaccess/http.conf/yourwebsite.conf in der Webserverkonfiguration Verzeichnis

RewriteEngine auf RewriteCond% {HTTP_HOST}^yourwebsite.com RewriteRule^(. *) http://www.yourwebsite.com $ $ 1 [R = dauerhaften, L]

+0

perfekt, dank – Randy

+0

Sie haben das $ nach^(. *) –

+1

@KnocksX verpasst Es ist nicht notwendig, da '*' gierig ist. –

28

Ich verwende den Code. Es kann für jeden Domainnamen verwendet werden. Sie müssen es nur in Ihre .htaccess-Datei eingeben.

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

(bearbeitet, um den gesamten Code in dem gleichen Block haben)

+0

Ich mag diese Antwort am meisten als die akzeptierte, keine Notwendigkeit, Domäne zu definieren. – joseantgv

1

Wenn Sie example.com zu www.example.com umleiten möchten, können Sie unter Code versuchen

RewriteEngine on 
RewriteCond %{HTTP_HOST} !www.example.com [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC] 
Verwandte Themen