Anh Duc
No Result
View All Result
  • Login
  • Trang chủ
  • Tản mạn
  • Du lịch
  • Dự án
  • Kiến thức
    • Flutter
    • Data Analysis
    • FFMPEG
    • MMO
    • Web Programming
SUBSCRIBE
  • Trang chủ
  • Tản mạn
  • Du lịch
  • Dự án
  • Kiến thức
    • Flutter
    • Data Analysis
    • FFMPEG
    • MMO
    • Web Programming
No Result
View All Result
Anh Duc
No Result
View All Result
Home Kiến thức

Cách chuyển hướng HTTP sang HTTPS và www sang non-www

21/05/2023
Reading Time: 5 mins read
0
http-to-https-and-www-to-non-www

Trong quá khứ, các trang web thường không được bảo mật và tất cả các URL đều bắt đầu bằng www. Ngày nay, hầu hết các trang web đều có chứng chỉ bảo mật SSL và phần lớn cũng loại bỏ phần tử www trong đường dẫn URL.

Trong bài viết này, mình sẽ hướng dẫn bạn cách chuyển tất cả link HTTP sang HTTPS và www sang non-www

Đối với máy chủ APACHE

Chuyển hướng từ http sang https

URL mặc định của các trang web không có chứng chỉ bảo mật SSL bắt đầu với http:// còn những trang web có chứng chỉ bắt đầu với https://.

Tuy nhiên, có rất nhiều người vẫn sử dụng http:// khi nhập URL. Để chuyển hướng tự động tất cả sang https:// bạn có thể sửa file .htaccess như sau:

# 301 REDIRECT HTTP TO HTTPS
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

Lưu ý: Sao lưu lại file .htaccess trước khi thay đổi BẤT KỲ ĐIỀU GÌ. Bất kỳ lỗi chính tả nào trong tệp sẽ làm ngừng hoạt động trang web của bạn.

Chuyển hướng từ https sang http

Trong trường hợp vì lý do nào đó bạn vẫn muốn sử dụng giao thức http://, bạn có thể sửa file .htaccess như sau:

# Redirect HTTPS to HTTP
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>

Chuyển hướng từ www sang non-www

Khi các trang web mới xuất hiện, tất cả các URL đều bắt đầu bằng www (viết tắt của World Wide Web). Hiện nay, hầu hết các trang web đã bỏ bớt www để URL ngắn hơn.

Để chuyển hướng tất cả các liên kết đến trang web từ www sang phiên bản không có www tương ứng, bạn có thể sử dụng mã sau trong tệp .htaccess:

# 301 REDIRECT WWW TO NON-WWW
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
</IfModule>

Chuyển hướng từ non-www sang www

Tất nhiên, vẫn có các trang web chọn sử dụng www trong URL.

Để chuyển hướng tất cả các liên kết đến trang web từ phiên bản không có www sang phiên bản có chứa www tương ứng, bạn có thể sử dụng mã sau:

# 301 REDIRECT NON-WWW TO WWW
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?!www\.)(.+) [NC]
RewriteRule ^(.*) http://www.%1/$1 [R=301,NE,L]
</IfModule>

Chuyển hướng đồng thời http sang https và www sang non-www

Các đoạn mã trên chỉ thực hiện một chức năng, bạn cũng có thể kết hợp chúng vào cùng một đoạn mã như sau:

# 301 REDIRECT HTTP TO HTTPS AND WWW TO NON-WWW
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
</IfModule>

Chuyển hướng đồng thời https sang http và non-www sang www

Tương tự với việc chuyển đồng thời https sang https và non-www sang www

# 301 REDIRECT HTTP TO HTTPS AND NON-WWW TO WWW
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [L,NE,R=301]
</IfModule>

Những đoạn mã trên rất hữu ích để đảm bảo các URL trên trang web hoạt động theo ý bạn, còn nhiều đoạn mã khác cũng hữu ích mà bạn có thể sử dụng trong tệp .htaccess trong tài liệu tham khảo dưới đây. Lưu ý nhớ sao lưu tệp .htaccess để có thể khôi phục khi có sự cố nhé.

Đối với máy chủ NGINX

Nginx hiện chiếm 32% thị phần web server. NGINX không hỗ trợ .htaccess nên để chuyển hướng URL chúng ta phải sửa đổi trong cấu hình của NGINX.

Trong NGINX giao thức HTTP sử dụng cổng 80 và HTTPS sử dụng cổng 443, hãy truy cập vào thư mục cấu hình NGINX tại đường dẫn ../etc/nginx/conf.d/ và mở file cấu hình web của bạn (thông thường có tên là tenmien.conf). Sửa đổi đoạn code như sau:

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://example.com$request_uri;
}

Để chuyển hướng www sang non-www sửa code như sau:

server {
    listen 443 ssl;
    server_name www.example.com;
    return 301 $scheme://example.com$request_uri;
}

Sau khi sửa đổi bạn khổi động lại Web server Nginx để thay đổi được thực hiện.

Trên đây là các cách chuyển hướng từ HTTP sang HTTPS, từ www sang non-www hoặc ngược lại. Bạn cần đảm bảo thực hiện một cách chính xác, nếu không sẽ ảnh hưởng đến thứ hạng tìm kiếm của trang web. Hy vọng bài viết này có thể giúp ích cho bạn.

Tham khảo:

Apache redirect www to non-www and HTTP to HTTPS (Simon Carletti)
23 Awesome .htaccess redirection from (www to Non-www) AND (Non-www to www) (2daygeek)
.htaccess Snippets (GitHub)

Post Views: 4,512
ShareTweetScan

Related Posts

nguoi-dung-mang-xa-hoi-viet-nam-2023
Data Analysis

Sự tăng trưởng người dùng của các mạng xã hội phổ biến tại Việt Nam tính đến đầu năm 2023

21/05/2023
So sánh báo điện tử vov, vtc, vtv
Data Analysis

So sánh báo điện tử VOV, VTC và VTV

15/01/2023
Phân tích dữ liệu người nghe phát thanh trên web năm 2022
Data Analysis

Phân tích dữ liệu người nghe phát thanh trên web năm 2022

01/01/2023
Leave Comment
Anh Duc

Anh Đức

Mình tên là Đức, mình có kinh nghiệm thiết kế đồ họa 2D, lập trình web, thiết kế phần cứng và hiện đang là một nhân viên nhà nước chăm chỉ. Blog này lập ra để chia sẻ những kiến thức, trải nghiệm mình có được, cảm ơn các bạn đã ghé qua.^^

Categories

  • Data Analysis
  • Dự án
  • Du lịch
  • FFMPEG
  • Flutter
  • Kiến thức
  • Tản mạn
  • Web Programming

Liên kết

RGBfree – Chia sẻ dữ liệu đồ họa

FPTwaze – Chia sẻ phần mềm

TiengAnhAz – Học Tiếng Anh trực tuyến

VOVMedia – Nghe Radio trực tuyến

HappyShop Today – Make up your moment, make up your life

Anh Duc

© 2022 Anh Duc's Blog

Navigate Site

Follow Us

No Result
View All Result
  • Trang chủ
  • Tản mạn
  • Du lịch
  • Dự án
  • Kiến thức
    • Flutter
    • Data Analysis
    • FFMPEG
    • MMO
    • Web Programming

© 2022 Anh Duc's Blog

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In