2012-05-19 12 views
6

Używam następujący kod w moim httpd.conf dla przekierowań:Jak przekierować z witryny www.domain.com do domeny.com?

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.domain.com$ [NC] 
RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L] 

Ale kończy się przekierowaniem do www.domain.com/domain.com//domain.com//domain.com

Chcę wszystkie poniższe adresy URL przekierować do domain.com:

http://domain.com 
http://www.domain.com 
www.domain.com 

Odpowiedz

8

To powinno wystarczyć. Problem polega na tym, że wygląda prawie tak samo jak to, co już masz. Kiedy wpiszesz w przeglądarce przeglądarkę http://domain.com, to działa? A może przekierowuje do innego miejsca?

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www\.domain\.com 
RewriteRule ^(.*)$ http://domain.com$1 [R=permanent,L] 
+0

To działa, gdy idę do http://domain.com, ale to nie działa, gdy idę do http://www.domain.com lub www.domain.com – egidra

+0

kiedy aby przejść do domeny.com, pokazuje ona dobrze swoją stronę, ale jeśli przejdziesz na stronę www.domain.com, robi to dziwne, zepsute URL. Czy poprawnie zinterpretowałem to, co powiedziałeś? –

+0

Tak, to prawda. – egidra

1
RewriteEngine On 

# Redirect ANY non-www request to https and www 
RewriteCond %{HTTP_HOST} !^(www.\.domain\.com)?$ 

RewriteRule (.*) https://www.domain.com/$1 [R=301,L] 

# Redirect ANY HTTP request to https and www 
RewriteCond %{SERVER_PORT} !443 

RewriteRule (.*) https://www.domain.com/$1 [R=301,L] 
Powiązane problemy