+3

NginX và CloudFlare Combo hoàn hảo

1. Yêu cầu bài toán

  • Https: Bảo mật đường truyền -> CloudFlare
  • Bảo vệ trang web -> CloudFlare
  • Thống kê, báo cáo -> CloudFlare
  • Reverse Proxy: Phân tải, có thể publish nhiều application với các port khác nhau trên cùng 1 server -> NginX

Cách thực hiện

Nginx

Mình cài đặt NginX trên CentOS, các môi trường khác tương tự. Nginx config nằm ở đây.

/etc/nginx

Xóa config mặc định port 80

/etc/nginx/nginx.conf

    server {
        listen       80;
        listen       [::]:80;
        server_name  _;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        error_page 404 /404.html;
        location = /404.html {
        }

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }
    }

Thêm config cho reverse proxy

tạo trong thư mục reserver-proxies.conf

/etc/nginx/default.d/
server {
        listen 80;
        server_name test1.tuanld.tk;
        location / {
                proxy_pass      http://127.0.0.1:8080;
        }
}

server {
        listen 80;
        server_name test2.tuanld.tk;
        location / {
                proxy_pass      http://127.0.0.1:8088;
        }
}

Trong config trên, dựa vào từng subdomain, nó sẽ forward đến từng service khác nhau.

CloudFlare

  • Tạo 1 tài khoản miễn phí trên https://www.cloudflare.com/

  • Add a new website image.png

  • Cloudflare sẽ yêu cầu chọn gói, mình dùng cơ bản nên chọn gói FREE.

  • Config DNS, bạn thể mua domain miễn phí theo hướng dẫn này image.png

  • CloudFlare sẽ forward đến port 80 trên server, chính vì vậy mình config reserve-proxy nhận port 80 ở trên image.png

  • Bước tiếp theo là config NameServers trên tài khoản Domains

image.png

Tùy vào nơi mình mua domain thì sẽ có UI khác nhau. Ví dụ bạn mua của Tenten https://tenten.vn/help/huong-dan-cau-hinh-nameserver-o-tenten/ hay của GoDaddy https://vn.godaddy.com/help/thay-doi-may-chu-ten-cho-mien-cua-toi-664

bước này rất quan trọng.

Sau bước này coi như xong, đợi thôi, thường mất 5-10p sâu khi config bạn sẽ nhận được email thông báo config thành công.

image.png

  • Redirect http -> https image.png

Kết quả. mình tạo 2 webpage khác nhau, ở 2 subdomain khác nhau. image.png image.png

  • HTTPS
  • redirect theo từng subdomain
  • Analytics rõ ràng và rất nhiều tính năng khác của cloudflare cần tự khám phá. image.png

Kết luận

Theo mình thì đây là combo đúng là ngon bổ và miễn phí.


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.