Reverse proxy là gì – Quang Nguyễn Blog

Nếu đang ở đây thì chắc hẳn bạn đã từng nghe qua hoặc được yêu cầu tìm hiểu về reverse proxy phải không?

Reverse proxy có vai trò như một cổng trung gian giữa client và server. Nhiệm vụ chính thì thường là chuyển tiếp một yêu cầu nội dung(thường là web browser) từ client tới server đích.

Như ở trên thì kiểu gì cũng có ông đặt câu hỏi “tại sao không để browser giao tiếp trực tiếp luôn với server mà đặt thêm con reverse proxy vào giữa chi cho rườm rà, phức tạp”.

Ok luôn, mình sẽ kể ra một số case mà bạn cần dùng tới reverse proxy:

  • Quang Nguyễn Blog - Reverse proxy là gìQuang Nguyễn Blog - Reverse proxy là gì . Tuy nhiên nếu bạn muốn chạy thêm 1 em web nữa hent**z.net thì tất nhiên port 80 đã bị chiếm nếu bạn chạy ở port khác ví dụ 81 thì muốn truy cập hent**z.net bạn cần url dạng khá bựa như sau hent**z.net:81. Không ai muốn có 1 url production như vậy. Thế giải pháp là gì? Chúng ta có thể sử dụng reverse proxy theo cách dưới.

    Ngay từ nhiệm vụ chính của nó là chuyển tiếp yêu cầu nội dung thì giả sử bạn có một con server và một domain dạng xvid**s.com. Khi đó bạn trỏ bản ghi A từ domain này về ip của server, server đang có 1 em web chạy ở port 80 vậy là khi truy cập xvid**s.com(https) thì sẽ yêu cầu luôn tới em web và bạn có thể xem phim ok. Tuy nhiên nếu bạn muốn chạy thêm 1 em web nữa hent**z.net thì tất nhiên port 80 đã bị chiếm nếu bạn chạy ở port khác ví dụ 81 thì muốn truy cập hent**z.net bạn cần url dạng khá bựa như sau hent**z.net:81. Không ai muốn có 1 url production như vậy. Thế giải pháp là gì? Chúng ta có thể sử dụngtheo cách dưới.

Quang Nguyễn Blog - Reverse proxy là gìQuang Nguyễn Blog - Reverse proxy là gìNhư hình trên thì mình sẽ chạy 3 con web trên 3 port và cấu hình con reverse proxy để đẩy traffic từ các client và domain tương ứng tới 3 em web *** trên server với domain đẹp ko có port ở sau 😀 .

  • Nhìn từ ví dụ trên thì bạn cũng thấy rằng vì tất cả các traffic đều phải qua em reverse proxy vậy nên chúng ta sẽ có thể: Cân bằng tải cho server, chạy web, service với ssl, cache, bảo mật(vì mọi thứ đều ẩn sau proxy),… thực sự là thiếu nó thì con server của chúng ta gần như chỉ là có tiếng mà không có miếng 😯 .

Hiện nay có một vài reverse proxy đang được anh em yêu thích và sử dụng rộng rãi:

  • Nginx reverse proxy(thằng này mình dùng cực nhiều).
  • HAProxy.
  • Traefik(thằng này thì thấy bên docker ae dùng nhiều).
  • Kong(thằng này tương tự traefik).
  • Envoy(tên này nghe thiên hạ đồn có vẻ bá đạo, mình cũng đang ngâm cứu).

Còn rất nhiều loại khác bao gồm cả mất phí và miễn phí tuy nhiên mình lược ra vài loại reverse proxy mà mình biết tới và được sử dụng nhiều.

Bài viết liên quan

  • Quang Nguyễn Blog - Reverse proxy là gìQuang Nguyễn Blog - Reverse proxy là gìHướng dẫn cấu hình VPS Ubuntu Google cloud

    Như trong bài viết trước Hướng dẫn thuê 3 tháng VPS Google cloud miễn phí các bạn đã tự thuê và tạo được 1 con vps ngon lành của google cloud với cái giá ~ 0đ để học tập và nghiên…

  • Quang Nguyễn Blog - Reverse proxy là gìQuang Nguyễn Blog - Reverse proxy là gìHướng dẫn cấu hình VPS Ubuntu Google cloud

    Như trong bài viết trước Hướng dẫn thuê 3 tháng VPS Google cloud miễn phí các bạn đã tự thuê và tạo được 1 con vps ngon lành của google cloud với cái giá ~ 0đ để học tập và nghiên…