Cấu hình chuyển hướng HTTP sang HTTPS ở port khác 80,443 trên Nginx

78

Cấu hình chuyển hướng HTTP sang HTTPS ở port khác 80,443 trên NginxCuongquach.com | Thông thường, chúng ta đều biết port tiêu chuẩn cho HTTP80HTTPS (HTTP + SSL) là 443. Khi cần người dùng truy cập website với giao thức HTTPS thì ta chỉ cần đơn giản là cấu hình điều hướng 80 sang 443 cho ServerName Domain rồi cấu hình SSL cho port 443 cho domain đó là xong. Trình duyệt sẽ xử lý điều hướng tự động theo cấu hình của bạn.

Nhưng sẽ có trường hợp, bạn muốn truy cập web ở một port khác như 8080. Ví dụ : http://cuongquachlab.com:8080/ , lúc này bạn muốn cấu hình HTTPS cho port 8080 của bạn với Nginx ( https://cuongquachlab.com:8080/), tất nhiên rất dễ cấu hình. Nhưng khi bạn truy cập bằng link scheme HTTP trên port 8080, thì sẽ gặp lỗi như sau :

Lỗi này là do bạn đang sử dụng giao thức không phù hợp là HTTP để giao tiếp ở port đang chỉ hỗ trợ giao thức HTTPS. Thế làm sao để cấu hình chuyển hướng HTTP sang HTTPS trên một port ngoài chuẩn 80,443 với dịch vụ Nginx Web Server đây. Bài viết này sẽ hướng dẫn bạn làm chuyện đó.

chuyen-huong-port-custom-http-https

Thao tác cấu hình chuyển hướng HTTP sang HTTPS trên port cụ thể

Bình thường theo cách truyền thống thì ta chuyển hướng từ HTTP (80) sang HTTPS (443) như thế này, trình duyệt tự biết hành vi xử lý theo tiêu chuẩn công nghệ chung :

Nhưng giờ ta phải cấu hình để tự chuyển hướng HTTP sang HTTPS ở một port custom như (8080) thì sao ?

Nginx hỗ trợ một HTTP Status Code tuỳ biến, giúp người dùng tự chuyển hướng từ HTTP sang HTTPS tên là 497 . Bạn chỉ cần cấu hình SSL cho port mà bạn mong muốn hỗ trợ HTTPS, sau đó nếu Nginx kiểm tra thấy bạn đang sử dụng giao thức HTTP để giao tiếp qua port đó, thì Nginx sẽ phản hồi HTTP Status Code 497 để tự điều hướng sang địa chỉ scheme endpoint bạn mong muốn.

Đơn giản vậy thôi. Giờ khi ai đó gõ http://cuongquachlab.com:8080 sẽ được chuyển hướng sang scheme HTTPS https://cuongquachlab.com:8080 .

Nguồn: https://cuongquach.com/

LEAVE A REPLY

Please enter your comment!
Please enter your name here