2012-05-19 69 views
6

Tôi đang sử dụng đoạn mã sau vào httpd.conf tôi cho chuyển hướng:Cách chuyển hướng từ www.domain.com sang domain.com?

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

Tuy nhiên, nó kết thúc chuyển hướng đến www.domain.com/domain.com//domain.com//domain.com

Tôi muốn tất cả các URL sau để chuyển hướng đến domain.com:

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

Trả lời

8

Điều này sẽ làm điều đó. Vấn đề là nó trông khá giống với những gì bạn đã có. Khi bạn nhập http://domain.com vào trình duyệt của mình, nó có hoạt động không? Hay nó chuyển hướng đến một nơi khác?

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

Nó hoạt động khi tôi đi đến http://domain.com, nhưng nó không hoạt động khi tôi đi đến http://www.domain.com hoặc www.domain.com – egidra

+0

Khi bạn để đi domain.com nó cho thấy trang web của bạn tốt, nhưng nếu bạn đi đến www.domain.com nó làm điều URL bị hỏng lạ. Tôi đã giải thích chính xác những gì bạn đã nói? –

+0

Vâng, đó là chính xác. – 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] 
Các vấn đề liên quan