Chuyển hướng tên miền Redirecting www to non-www sử dụng .htaccess

Thảo luận trong 'Tips and Guides' bắt đầu bởi PVS, 13/05/2015.

  1. PVS

    PVS Cộng Sự Đặc Biệt Thành viên BQT

    Tham gia:
    28/02/2015
    Bài viết:
    11,744
    Đã được thích:
    6,994
    Điểm thành tích:
    113
    Giới tính:
    Nam
    Nơi ở:
    Huế
    Web:
    Redirecting www to non-www sử dụng .htaccess một trong những bước của tối ưu hóa SEO tăng xếp hạng trong Google, hướng dẫn giúp bạn tránh được việc trùng lập nội dung khi website có www và không www.

    Khi bạn sử dụng Apache trên máy chủ Linux được hỗ trợ mod_rewrite dùng để viết lại URL ngắn gọn dễ nhớ, thuận tiện gọn gàng và Google sẽ đánh giá cao việc này theo tiêu chuẩn URL Friendly thân thiện với người dùng.

    Một số người thích sử dụng www.phoxinhbaobao.com, nhưng một số người thích vnxf.vn ngắn hơn. Không thực sự là một đúng hay sai để làm điều đó, nhưng bất cứ điều gì bạn chọn, bạn có thể chắc chắn rằng tất cả các khách truy cập của bạn được gửi đến cùng một nơi. Với một vài quy tắc đơn giản trên máy chủ, bạn có thể chọn từ non www sang www, hoặc chuyển hướng từ www không www.

    Redirect www to non-www:
    Mã:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^www.phoxinhbaobao.com [NC]
    RewriteRule ^(.*)$ http://vnxf.vn/$1 [L,R=301]
    Redirect non-www to www:
    Mã:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^vnxf.vn [NC]
    RewriteRule ^(.*)$ http://www.phoxinhbaobao.com/$1 [L,R=301]
    Nếu bạn đã có một tập tin có tên. Htaccess trên website của bạn, bạn có thể thêm vào nó. Nếu không, tạo ra một files tên .htaccess trong thư mục của tên miền. Thêm một trong các quy tắc sau đây và lưu lại. Thay thế vnxf.vn với tên miền của bạn.

    Cho tên miền cấp 1
    Mã:
    RewriteEngine On
    
    RewriteCond %{HTTP_HOST} ^domain.com
    RewriteRule (.*) http://www.domain.com/$1 [R=301,L]
    Cho tên miền cấp 2
    Mã:
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^domain.co.uk
    RewriteRule (.*) http://www.domain.co.uk/$1 [R=301,L]
    Cập nhập file .htacess 2014, cách này ngắn gọn và không đụng trong 1 số trường hợp code bạn re-write hơi đặc biệt

    Here are the rules to redirect a www URL to no-www:

    #########################
    # redirect www to no-www
    #########################

    RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
    RewriteRule ^(.*) http://%1/$1 [R=301,NE,L]
    Here are the rules to redirect a no-www URL to www:

    #########################
    # redirect no-www to www
    #########################

    RewriteCond %{HTTP_HOST} ^(?!www\.)(.+) [NC]
    RewriteRule ^(.*) http://www.%1/$1 [R=301,NE,L]
    Note that I used NE flag to prevent apache from escaping the query string. Without this flag, apache will change the requested URL http://www.phoxinhbaobao.com/?htacess to http://www.example.com/?htacess

    Chúc các bạn thành công.


    Nguồn: imsvietnam.com​
     
    THB thích bài này.
  2. Coolboyhn

    Coolboyhn Thượng Đế

    Tham gia:
    15/03/2015
    Bài viết:
    340
    Đã được thích:
    229
    Điểm thành tích:
    43
    Giới tính:
    Nam
    Lúc thì www lúc thì bỏ, làm cứ phải login lắm, bó.....
     
    THB thích bài này.
  3. THB

    THB Admin - Founder Thành viên BQT

    Tham gia:
    25/02/2015
    Bài viết:
    6,336
    Đã được thích:
    3,550
    Điểm thành tích:
    113
    Giới tính:
    Nam
    Nghề nghiệp:
    CEO
    Nơi ở:
    Bình Dương
    Web:
    Cái này 50-50. Tùy thích thôi. Biết thêm là đc rồi.hiii
     
  4. WOWLivex

    WOWLivex Thượng Đế

    Tham gia:
    23/05/2015
    Bài viết:
    24
    Đã được thích:
    11
    Điểm thành tích:
    3
    Giới tính:
    Nam
    còn tên miền domain.com/forum thì chuyển như nào vậy ?

    Ví dụ : www.domain.com/forum -> domain.com/forum
     
  5. Shu Sakamaki

    Shu Sakamaki Thượng Đế

    Tham gia:
    09/07/2015
    Bài viết:
    103
    Đã được thích:
    37
    Điểm thành tích:
    28
    Giới tính:
    Nam
    Nơi ở:
    TPHCM
    em cũng đang thắc mắc như trên
     
  6. phankt

    phankt Thượng Đế

    Tham gia:
    23/08/2016
    Bài viết:
    114
    Đã được thích:
    23
    Điểm thành tích:
    18
    Giới tính:
    Nam
    Nghề nghiệp:
    SEO Gà Mờ
    Nơi ở:
    hanoi
    Web:
    website em thì có dạng này: www.domain.com
    diễn đàn thì có dạng này: domain.com/diendan.
    em muốn chuyển website về non www cho trùng với diễn đàn thì có áp dụng được cách trên không.
    - em đã chuyển được website còn diễn đàn thì chưa chuyển được bác nào chuyển được rồi giúp em với.
    hiện tại diễn đàn vẫn chưa 301 về non www
     
    Chỉnh sửa cuối: 17/09/2016
    THB thích bài này.
  7. tuna

    tuna Thượng Đế

    Tham gia:
    30/01/2017
    Bài viết:
    641
    Đã được thích:
    246
    Điểm thành tích:
    43
    Giới tính:
    Nam
    mình thử thêm đoạn này vào file htacess rồi mà vẫn ko đc bác @PVS:((, đã sửa lại thành domain của mình nhé mà vẫn ko đc

    Mã:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^www.phoxinhbaobao.com [NC]
    RewriteRule ^(.*)$ http://vnxf.vn/$1 [L,R=301]
     
  8. tuna

    tuna Thượng Đế

    Tham gia:
    30/01/2017
    Bài viết:
    641
    Đã được thích:
    246
    Điểm thành tích:
    43
    Giới tính:
    Nam
    Mình làm như hướng dẫn bên trên thì không được, nhưng làm theo một trang khác nó như thế này thì được.

    Mã:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^www\.vnxf\.vn [NC]
    RewriteRule ^(.*)$ http://vnxf.vn/$1 [L,R=301]
    Nhưng nó chỉ 301 cái trang chủ, còn tất cả link khác, kể cả vào forum cũng bị hiện 404, mình đã xóa đoạn code trên trong htacess nhưng nó ko về lại bình thường mà vẫn 404 tất cả link trừ trang chủ :(

    Bác nào biết vấn đề này như thế nào không ạ :((((
     
    THB thích bài này.
  9. tuna

    tuna Thượng Đế

    Tham gia:
    30/01/2017
    Bài viết:
    641
    Đã được thích:
    246
    Điểm thành tích:
    43
    Giới tính:
    Nam
    Có cách nào để cái xen:raw $url nó tự chuyển thành wwww ko các bác
     
    THB thích bài này.

Chia sẻ trang này