Bạn có thể mở localhost mà không cần chuyển tiếp cổng bằng một tunnel WebSocket đi ra. Thay vì mở cổng đi vào trên router, CLI tunnel kết nối từ máy của bạn tới một cổng đám mây, nơi cấp một URL HTTPS công khai — không cấu hình router, không IP công khai và không ngoại lệ tường lửa.
Vì sao chuyển tiếp cổng là nỗi đau của lập trình viên
Chuyển tiếp cổng truyền thống đòi hỏi:
- Quyền truy cập trang quản trị của router.
- Một địa chỉ IP công khai tĩnh hoặc động.
- Các quy tắc tường lửa đi vào trên máy và router.
- Cấu hình thủ công chứng chỉ TLS cho HTTPS.
- Sự hợp tác của ISP (nhiều nhà mạng chặn cổng đi vào trên kết nối gia đình).
Mạng doanh nghiệp và Wi-Fi quán cà phê còn làm mọi thứ phức tạp hơn. Hầu hết lập trình viên cần một con đường đơn giản hơn.
Tunnel đi ra thay thế chuyển tiếp cổng như thế nào
Các công cụ tunnel localhost hiện đại đảo chiều kết nối:
- CLI tunnel của bạn khởi tạo một kết nối đi ra tới cổng đám mây.
- Cổng cấp một URL HTTPS công khai gắn với phiên của bạn.
- Lưu lượng bên ngoài đến cổng; yêu cầu chảy qua kênh đi ra sẵn có tới cổng cục bộ của bạn.
- Khi bạn dừng CLI, URL ngừng hoạt động.
Vì kết nối bắt đầu từ bên trong mạng của bạn, tường lửa doanh nghiệp, NAT và hạn chế của ISP hiếm khi chặn nó.
Mở localhost với một lệnh
npx portpreview 3000
PortPreview kết nối đi ra, cấp một URL HTTPS và chuyển tiếp lưu lượng tới cổng 3000 trên máy của bạn. Không đăng nhập router, không bản ghi DNS, không quản lý chứng chỉ.
Chuyển tiếp cổng so với tunnel localhost
| Khía cạnh | Chuyển tiếp cổng | Tunnel localhost |
|---|---|---|
| Cấu hình router | Cần thiết | Không cần |
| IP công khai | Cần thiết | Không cần |
| HTTPS | Cấu hình thủ công | Có sẵn |
| Thay đổi tường lửa | Quy tắc đi vào | Không (chỉ đi ra) |
| Kiểm tra yêu cầu | Công cụ riêng | Tích hợp trong PortPreview |
| Mạng doanh nghiệp | Thường bị chặn | Thường hoạt động |
Khi nào bạn vẫn cần chuyển tiếp cổng
- Các dịch vụ tự host cần chạy lâu dài trên hạ tầng của riêng bạn.
- Các giao thức mà công cụ tunnel không hỗ trợ (dịch vụ TCP tùy chỉnh ngoài HTTP).
- Môi trường mà kết nối đi ra tới cổng bên thứ ba bị chính sách chặn.
Với kiểm thử webhook HTTP, callback OAuth và xem trước khi phát triển, tunnel localhost là lựa chọn mặc định nhanh và an toàn hơn.
Lợi ích bảo mật khi tránh chuyển tiếp cổng
Mở cổng đi vào phơi bày toàn bộ phân đoạn mạng của bạn ra internet. Tunnel đi ra giới hạn mức phơi bày ở một cổng cục bộ duy nhất trong suốt phiên đang hoạt động. Đọc hướng dẫn bảo mật tunnel localhost của chúng tôi để biết các thực hành tốt chi tiết.
Các tình huống dùng phổ biến không cần chuyển tiếp cổng
- Kiểm thử webhook của Stripe, GitHub hoặc Twilio (gỡ lỗi webhook cục bộ).
- Chia sẻ công việc đang làm với đồng nghiệp (chia sẻ máy chủ phát triển cục bộ).
- Kiểm thử trên thiết bị di động (kiểm thử di động với tunnel).
- Kiểm thử callback OAuth trên localhost.
Tham gia danh sách chờ của PortPreview để mở localhost mà không cần đụng tới router.