Hầu hết các thiết bị macOS và Windows đã đi kèm với các thư viện cURL được cài đặt sẵn (libcurl). Nhưng đa phần người dùng lại không biết cách sử dụng chúng đúng cách với proxy.
cURL viết tắt của Client URL là một công cụ dòng lệnh (command line tool) dùng để kiểm tra kết nối từ URL và cho phép truyền dữ liệu. Với việc hỗ trợ hơn 25 giao thức, bao gồm HTTP, HTTPS, FTP và SFTP,… Khi nói đến việc gỡ lỗi các yêu cầu mạng và lệnh gọi API thì đây là một trong những công cụ nguồn mở tốt nhất hiện có và miễn phí. Công cụ hoạt động trên Linux, Mac và Windows. Hiểu một cách đơn giản thì về cơ bản bạn có thể sử dụng lệnh cURL để upload và tải xuống nội dung từ internet. Nếu máy của bạn chưa có sẵn cURL có thể tải tại https://curl.se/download.html.
Tải xuống nội dung trên internet với cURL
cURL hỗ trợ proxy như thế nào?
cURL hỗ trợ proxy thông qua tùy chọn dòng lệnh -x hoặc –proxy. Bạn nên đặt địa chỉ máy chủ proxy trong dấu ngoặc kép để xử lý các ký tự đặc biệt trong URL một cách chính xác. Lưu ý rằng giao thức proxy mặc định cho cURL là HTTP.
Để sử dụng proxy với công cụ này, bạn phải chuyển địa chỉ proxy được yêu cầu bằng tùy chọn dòng lệnh -x (hoặc –proxy) Đồng thời xác thực thông tin proxy bằng cách sử dụng khóa chuyển dòng lệnh -U (hoặc –proxy-user). Thông tin đăng nhập proxy cũng có thể được chuyển vào chuỗi proxy và sẽ được giải mã URL bởi cURL.
Chuỗi proxy có thể được bắt đầu bằng giao thức: //. Ví dụ: http:// hoặc socks5://. Nếu không có giao thức nào được chỉ định thì mặc định là http://. Nếu không có số cổng nào được chỉ định trong chuỗi proxy, cổng mặc định là 1080.
Hình thức chung của lệnh Curl để gửi yêu cầu thông qua máy chủ proxy như sau:
Chuyển địa chỉ proxy tới cURL thông qua các biến môi trường
Biến môi trường (Environment Variable) là gì?
Biến môi trường là một cặp khóa=giá trị được đặt ở cấp hệ thống và có thể ảnh hưởng đến hành vi của tất cả các quy trình đang chạy trên máy tính. Các biến môi trường là một phần của hệ điều hành. Nó được giới thiệu lần đầu tiên vào năm 1979 trên Unix và hiện được hỗ trợ bởi tất cả các hệ điều hành, bao gồm Linux, macOS và Windows.
Cách chuyển địa chỉ proxy tới cURL
Một cách khác để chuyển địa chỉ proxy tới Curl là đặt các biến môi trường http_proxy và https_proxy. Sử dụng các biến môi trường này sẽ có tác dụng tương tự như sử dụng tùy chọn dòng lệnh -x và –proxy.
Để tắt cài đặt proxy chung, hãy bỏ đặt hai biến môi trường này:
unset http_proxy
unset https_proxy
Cách vượt qua lỗi chứng chỉ SSL khi sử dụng Proxy cURL
Nếu cURL gặp lỗi chứng chỉ SSL, nó sẽ tự động chặn yêu cầu. Đối với mục đích gỡ lỗi, để cho phép các kết nối không an toàn đến máy chủ, bạn có thể yêu cầu bỏ qua các lỗi chứng chỉ SSL bằng cách thêm tùy chọn dòng lệnh -k vào yêu cầu:
curl -x "[protocol://][host][:port]" -k [URL]
Cách để bỏ qua proxy cho một yêu cầu cURL
Giả sử proxy được đặt trên toàn cầu thông qua một biến môi trường hoặc tệp .curlrc. Trong trường hợp đó, bạn vẫn có thể bỏ qua proxy cho các yêu cầu cURL cụ thể bằng cách sử dụng tham số dòng lệnh –noproxy “*” trong yêu cầu cURL. Vô hiệu hóa Proxy cho các yêu cầu cụ thể:
curl --noproxy "*" https://reqbin.com/echo
Cách chỉ định tên người dùng và mật khẩu proxy cho cURL
Nếu proxy của bạn yêu cầu xác thực người dùng, bạn có thể chuyển tên người dùng và mật khẩu cho cURL bằng khóa chuyển dòng lệnh -U hoặc –proxy-user. Xác thực Proxy Curl:
Truy cập zingproxy.com để tìm hiểu và đăng ký sử dụng Proxy chất lượng cao. Mọi câu hỏi cần giải đáp vui lòng gửi về các kênh liên hệ của chúng tôi. Cảm ơn đã theo dõi bài viết!
Bất kỳ Data Engineer hay Backend Developer nào từng chạy các dự án thu thập dữ liệu (web scraping) đều thấu hiểu một kịch bản đau tim quen thuộc: Script chạy mượt mà trên môi trường local với vài trăm URL, nhưng ngay khi đẩy lên production để scale lên hàng triệu request, pipeline lập […]
Bạn vừa deploy một tính năng mới, backend đã được tối ưu cache, database query chỉ mất vài mili-giây. Thế nhưng, user vẫn liên tục phàn nàn về việc app bị treo, vòng tròn loading quay không ngừng khi họ bước vào thang máy hoặc chuyển từ Wi-Fi công ty ra mạng 4G. Các kỹ […]
Chắc hẳn bạn đã từng trải qua tình huống này: Đẩy code lên nhánh main vào lúc nửa đêm, đinh ninh rằng hệ thống sẽ tự động hoàn tất quá trình build và deploy. Nhưng chỉ vài phút sau, pipeline báo đỏ rực. Khi mở log kiểm tra, nguyên nhân không xuất phát từ lỗi […]
Bạn vừa deploy một LLM agent lên server riêng, cấu hình API key đầy đủ, nạp toàn bộ tài liệu nội bộ vào vector database và yên tâm rằng hệ thống đã an toàn vì tường lửa Ingress bảo vệ vững chắc. Nhưng sáng hôm sau, hóa đơn cloud tăng vọt, hoặc tệ hơn, thông […]
Hiện tượng CPU peak (chạm ngưỡng 100%) và hàng loạt lỗi 504 Gateway Timeout là viễn cảnh cực kỳ quen thuộc đối với các backend developer khi vận hành hệ thống Microservices trên những VPS có cấu hình giới hạn (1 vCPU, 1-2GB RAM). Bạn thuê một máy chủ ảo, triển khai vài service Spring […]
Tháng 10 năm 2025 có lẽ là thời điểm ám ảnh đối với nhiều Solutions Architect và DevOps Engineer. Lỗi tự động hóa DNS tại us-east-1 của AWS đã kéo theo sự sụp đổ dây chuyền của hàng loạt dịch vụ phụ thuộc trên toàn cầu, khiến hàng ngàn nền tảng SaaS tê liệt. Cùng […]