Hướng dẫn cấu hình PC thành public server

Chào mọi người, Mình đã từng gặp trường hợp phía FE không thể access vào server công ty (vì authen, policy ,.. nên bị chặn request), giờ làm cách nào để bên FE có thể gọi API phía BE để test nhỉ ? Tất nhiên là ta phải tạo 1 cái server rồi và tìm

Chào mọi người,
Mình đã từng gặp trường hợp phía FE không thể access vào server công ty (vì authen, policy ,.. nên bị chặn request), giờ làm cách nào để bên FE có thể gọi API phía BE để test nhỉ ? Tất nhiên là ta phải tạo 1 cái server rồi và tìm cách để thiết bị bên FE có thể gọi được server bên phía BE. Bài viết này mình sẽ hướng dẫn 2 cách host server, server nội bộ nếu dùng chung mạng (làm ở trên văn phòng) hoặc server public (làm remote nên không cùng chung mạng được)

Server local

Với server nội bộ thì cách config khá đơn giản, bao gồm 2 bước:

  1. Start server
    Như mình hay làm việc với rails thì khi không set gì thì default nó sẽ start với port 3000, tuy nhiên các bạn lưu ý là phải binding với address 0.0.0.0 thay vì 127.0.0.1. Lý do là vì địa chỉ 127.0.0.1 không thể truy cập từ bên ngoài.
    Vd: Trong rails ta sẽ dùng lệnhrails s -b 0.0.0.0 thay vì rails s như bình thường

  2. Bỏ chặn firewall port để cho phép truy cập từ bên ngoài
  • Với ubuntu ta chỉ đơn giản là gõ lệnh sudo ufw allow <port>
  • Với window thì sẽ rườm rà hơn một chút bạn sẽ phải vào Window Firewall để set rule mở port

Hoàn thành 2 bước trên thì ta chỉ cần tìm IP Private của máy trong mạng nội bộ là đã có thể truy cập vào server rồi

Server public

Tương tự với việc host 1 server nội bộ, ta cũng thực hiện 2 bước ở trên, sau đó thực việc port forwarding tới port đang chạy server. Mục đích là để forward request

  1. Tìm default gateway cũng là địa chỉ IP của router. Ở đây mình dùng lệnh ipconfig /all
  2. Truy cập vào router thông qua địa chỉ vừa tìm được và login (hầu hết username và password mặc định để đăng nhập đều được dán ở phía mặt sau router)
  3. Tìm đến chức năng port forwarding và config. Tuỳ theo router mà cách config sẽ có đôi chỗ khác nhau nhưng các bạn chỉ cần để ý các giá trị là địa chỉ IP private (địa chỉ IP của máy host server), port cần forward và giao thức sử dụng
  4. Tìm địa chỉ IP public

    Tới đây thì bạn đã có thể truy cập server bằng public IP rồi.

    Kiểm tra bằng website canyouseeme.org

Lưu ý:

Bạn có thể phải cần setting cho router cấp phát IP private tĩnh cho máy host server để tránh trường hợp phải setting lại khi host server được cấp một địa chỉ IP tự động bằng DHCP. Như hình minh hoạ dưới đây

Và bạn cũng không nên dùng cách ở hình dưới để setting IP private tĩnh vì đôi khi sẽ xảy ra conflict khi router đã cấp địa chỉ IP mình mong muốn cho một thiết bị khác

Kết

Đây là phương pháp mà mình tự mày mò và nghiên cứu ra, có đôi chỗ giải thích có lẽ không chính xác hoặc khó hiểu mong mọi người đóng góp ý kiến. Chúc các bạn áp dụng thành công!

Nguồn: viblo.asia

Bài viết liên quan

WebP là gì? Hướng dẫn cách để chuyển hình ảnh jpg, png qua webp

WebP là gì? WebP là một định dạng ảnh hiện đại, được phát triển bởi Google

Điểm khác biệt giữa IPv4 và IPv6 là gì?

IPv4 và IPv6 là hai phiên bản của hệ thống địa chỉ Giao thức Internet (IP). IP l

Check nameservers của tên miền xem website trỏ đúng chưa

Tìm hiểu cách check nameservers của tên miền để xác định tên miền đó đang dùn

Mình đang dùng Google Domains để check tên miền hàng ngày

Từ khi thông báo dịch vụ Google Domains bỏ mác Beta, mình mới để ý và bắt đầ