Skip to contentSkip to main navigation Skip to footer

Chuyển hướng http sang https bằng file .htaccess

Sau khi bạn cài đặt SSL lên website hoàn tất, tuy nhiên khi truy cập vào website ở giao thức http:// không tự chuyển về https:// .

Ví dụ: truy cập http://domain không tự chuyển về https://domain

Có hai cách để giải quyết vấn đề này là sử dụng Plugin chuyển hướng của bên thứ ba và xử lý bằng file .htaccess. Và ở bài viết này mình hướng dẫn bạn xử lý bằng cách thêm các đoạn mã vào file .htaccess.

Nếu bạn sử dụng hosting tại AZDIGI và sử dụng mã nguồn WordPress thì thêm các mã này

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</IfModule>
# END WordPress

Mã trên bao gồm .htaccess mặc định của WordPress và chuyển hướng https

Nếu bạn sử dụng CloudFlare.

Truy cập vào CloudFlare tìm tên miền của bạn và chọn chức năng Page Rules
Chọn bật chức năng “Always uses https
Phần URL patternđiền vào tên miền của bạn theo mẫu dưới đây (Vui lòng thay domain.com là tên miền của bạn).

*domain.com/*

Nếu bạn sử dụng máy chủ Nginx

Sửa file vhost (conf) thêm giống dưới đây và sau khi thêm xong reload bằng lệnh sau

server { 
listen 80 
server_name example.com www.example.com; 
## redirect http to https ## 
rewrite ^ https://$server_name$request_uri? permanent; 
}
nginx -s reload

Nếu bạn sử dụng Windows Hosting

Bạn thêm vào file web.config đoạn mã dưới đây

<rule name="Redirect to HTTP" stopProcessing="true"> 
<match url="(.*)" /> 
<conditions>
<add input="{R:1}" pattern="^onepage/(.*)$" negate="true" /> 
<add input="{HTTPS}" pattern="^ON$" /> 
</conditions> 
<action type="Redirect" url="http://{HTTP_HOST}/{R:0}" redirectType="Permanent" />
</rule>

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

Was This Article Helpful?