502 Bad Gateway là gì? 12 cách khắc phục hiệu quả
502 Bad Gateway là gì là câu hỏi nhiều anh em đặt ra khi đang lướt web, đang chạy tool qua proxy hay đang quản trị website bỗng gặp một trang trắng với dòng chữ ngắn gọn này. Lỗi xuất hiện khi một máy chủ trung gian nhận được phản hồi không hợp lệ từ máy chủ phía sau. Trong bài viết này, ProxyVN giúp anh em hiểu cơ chế của lỗi, nhận diện nguyên nhân, đánh giá ảnh hưởng tới SEO và xử lý theo đúng thứ tự. Nhờ đó, người truy cập tránh được thao tác thừa, còn chủ website có thể khoanh vùng sự cố nhanh hơn.
502 Bad Gateway là gì
Theo tài liệu HTTP của MDN, 502 Bad Gateway là mã phản hồi lỗi phía máy chủ. Mã này cho biết máy chủ đang đóng vai trò gateway hoặc proxy đã nhận một phản hồi không hợp lệ từ máy chủ phía sau, thường gọi là upstream server.

502 Bad Gateway
Hãy hình dung một website hiện đại như một dây chuyền. Trình duyệt của anh em gửi yêu cầu tới CDN, CDN chuyển tới bộ cân bằng tải, bộ cân bằng tải chuyển tới reverse proxy như Nginx, rồi Nginx mới chuyển tới tiến trình ứng dụng như PHP-FPM, Node.js hay Python. Nếu mắt xích trung gian nào nhận được phản hồi sai định dạng, bị cắt giữa chừng hoặc không nhận được gì vì kết nối bị từ chối, nó trả về mã 502.
Điểm cần nhớ: lỗi 502 thường nằm trong chuỗi giao tiếp giữa các máy chủ, nên máy tính của người truy cập không phải lúc nào cũng là nguyên nhân.
Dấu hiệu nhận biết phổ biến
Thông báo thay đổi tùy máy chủ, CDN hoặc trình duyệt. Các biến thể thường gặp gồm:
- 502 Bad Gateway, Error 502 hoặc HTTP 502.
- 502 Proxy Error, thường thấy khi Apache làm proxy.
- Temporary Error (502) hoặc 502 Service Temporarily Overloaded.
- Bad Gateway: The proxy server received an invalid response from an upstream server.
- 502 Bad Gateway nginx, khi Nginx là máy chủ báo lỗi.
- Trang lỗi mang thương hiệu CDN với sơ đồ trình duyệt, CDN và máy chủ gốc, đánh dấu mắt xích bị lỗi.
Đọc kỹ trang lỗi giúp anh em biết mắt xích nào đang báo. Trang có chữ nginx cho biết Nginx là nơi phát hiện lỗi. Trang mang thương hiệu CDN cho biết CDN không nhận được phản hồi hợp lệ từ máy chủ gốc.
Phân biệt 502 với các lỗi 5xx khác
Các mã lỗi 5xx đều là lỗi phía máy chủ, nhưng mỗi mã chỉ tới một hướng xử lý khác nhau:
Mã lỗi |
Ý nghĩa ngắn gọn |
Hướng kiểm tra chính |
|---|---|---|
500 Internal Server Error |
Ứng dụng gặp lỗi khi xử lý |
Mã nguồn, cấu hình ứng dụng |
502 Bad Gateway |
Gateway nhận phản hồi không hợp lệ |
Tiến trình ứng dụng, cấu hình upstream |
503 Service Unavailable |
Máy chủ tạm thời không phục vụ |
Bảo trì, quá tải, giới hạn tài nguyên |
504 Gateway Timeout |
Gateway chờ quá lâu không có phản hồi |
Truy vấn chậm, thời gian chờ |
Khác biệt quan trọng nhất là giữa 502 và 504. Mã 502 nghĩa là gateway đã nhận được câu trả lời nhưng câu trả lời đó hỏng, hoặc kết nối bị từ chối ngay. Mã 504 nghĩa là gateway chờ mãi không nhận được câu trả lời. Nếu anh em đang gặp 504, bài 504 gateway timeout có hướng xử lý riêng; với 503, xem bài lỗi 503 Service Unavailable.
Nguyên nhân phổ biến của lỗi 502 Bad Gateway
Mã 502 không nói rõ nguyên nhân cụ thể. Vì vậy, anh em cần xem xét lớp proxy, máy chủ gốc và kết nối giữa chúng.

Chuỗi máy chủ trung gian gây lỗi 502
Tiến trình ứng dụng bị dừng hoặc sập
Đây là nguyên nhân phổ biến nhất. Khi PHP-FPM, Node.js hay ứng dụng Python dừng hoạt động, Nginx gửi yêu cầu tới cổng hoặc socket không còn ai lắng nghe và nhận lỗi kết nối bị từ chối. Ứng dụng có thể sập do hết bộ nhớ, lỗi mã nguồn chưa được bắt, hoặc bị hệ điều hành dừng khi RAM cạn.
Máy chủ quá tải
Lưu lượng tăng đột ngột, tài nguyên cạn kiệt hoặc tấn công từ chối dịch vụ có thể khiến máy chủ gốc phản hồi sai hoặc đóng kết nối sớm. Khi tất cả tiến trình xử lý đều bận, các yêu cầu mới có thể bị từ chối ngay.
Cấu hình proxy sai
Sai địa chỉ upstream, sai cổng, nhầm giữa HTTP và HTTPS hoặc sai đường dẫn socket đều khiến kết nối giữa reverse proxy và ứng dụng thất bại. Lỗi này thường xuất hiện ngay sau khi đổi cấu hình hoặc chuyển máy chủ.
DNS chưa cập nhật
Sau khi đổi IP máy chủ, reverse proxy hoặc CDN có thể vẫn trỏ tới địa chỉ cũ do bộ nhớ đệm DNS. Yêu cầu tới IP cũ không còn dịch vụ nào trả lời, dẫn tới lỗi.
Tường lửa chặn kết nối
Tường lửa hoặc hệ thống chống tấn công trên máy chủ gốc có thể vô tình chặn IP hợp lệ của CDN và reverse proxy, nhất là khi danh sách IP của CDN thay đổi.
CDN gặp trục trặc
Cloudflare khuyến nghị xác định lỗi phát sinh từ máy chủ gốc hay từ chính CDN trước khi bắt tay sửa. Trang lỗi của CDN thường cho biết điều này.
Phản hồi sai định dạng
Header phản hồi quá lớn, dữ liệu nén bị hỏng hoặc kết nối bị đóng sớm có thể khiến gateway từ chối phản hồi. Một ví dụ điển hình là ứng dụng gửi quá nhiều cookie, làm header vượt giới hạn bộ đệm của Nginx.
Khi hỗ trợ kết nối cho khách hàng, ProxyVN luôn ưu tiên xác định phạm vi trước. Nếu chỉ một thiết bị gặp lỗi, hãy xem trình duyệt, mạng và proxy cục bộ. Nếu nhiều mạng khác nhau đều gặp lỗi, sự cố nhiều khả năng nằm tại website hoặc máy chủ phía sau.
Ảnh hưởng của lỗi 502 tới SEO và kinh doanh
Một lần gián đoạn ngắn chưa có nghĩa website mất thứ hạng ngay. Rủi ro chỉ thật sự tăng khi lỗi lặp lại trên nhiều URL hoặc kéo dài nhiều giờ.

Ảnh hưởng của mã lỗi 502 đến SEO
Theo hướng dẫn chính thức của Google về mã trạng thái HTTP, lỗi 5xx khiến trình thu thập dữ liệu tạm giảm tốc độ thu thập. Nội dung trả về cùng mã lỗi bị bỏ qua, còn URL liên tục báo lỗi trong thời gian dài có thể dần bị loại khỏi chỉ mục.
Ngoài SEO, lỗi còn tác động trực tiếp tới hoạt động kinh doanh:
- Người dùng không đọc được nội dung, không gửi được biểu mẫu hay thanh toán.
- Quảng cáo vẫn tiêu ngân sách dù trang đích không truy cập được.
- Lỗi tái diễn làm giảm niềm tin của khách hàng vào thương hiệu.
- Đội kỹ thuật mất nhiều thời gian truy tìm nếu thiếu log và dữ liệu giám sát.
Với website bán hàng, mỗi giờ lỗi 502 trong đợt khuyến mãi có thể tương đương doanh thu của nhiều ngày bình thường. Đây là lý do việc phòng ngừa quan trọng không kém việc khắc phục.
12 cách khắc phục lỗi 502 Bad Gateway
Trước tiên, hãy xác định mình là người truy cập hay chủ website. Sáu cách đầu dành cho người dùng; sáu cách sau cần quyền quản trị.
Cách 1: Tải lại trang
Nhấn F5 hoặc nút tải lại sau 30 tới 60 giây. Lỗi 502 thường chỉ tạm thời khi tiến trình ứng dụng đang khởi động lại hoặc máy chủ vừa vượt qua đợt quá tải ngắn.
Cách 2: Mở cửa sổ ẩn danh
Cửa sổ ẩn danh không dùng cookie, bộ nhớ đệm và phần lớn tiện ích mở rộng. Nếu trang mở được trong cửa sổ ẩn danh, vấn đề nằm ở dữ liệu trình duyệt hoặc tiện ích.
Cách 3: Dùng trình duyệt khác
Nếu website hoạt động trên trình duyệt khác, hãy cập nhật trình duyệt ban đầu hoặc tắt lần lượt các tiện ích để tìm thủ phạm.
Cách 4: Khởi động lại thiết bị mạng và thử mạng khác
Khởi động lại modem, router. Sau đó thử truy cập bằng mạng di động để xem lỗi có phụ thuộc vào đường truyền hay không.
Cách 5: Xóa bộ nhớ đệm và cookie của tên miền lỗi
Chỉ xóa dữ liệu của tên miền đang lỗi. Xóa toàn bộ cookie sẽ đăng xuất nhiều tài khoản mà không giúp sửa lỗi phía máy chủ.
Cách 6: Kiểm tra DNS và proxy cục bộ
Trên Windows, mở Command Prompt và chạy lệnh dưới đây. Theo Microsoft Learn, lệnh này đặt lại bộ nhớ đệm DNS của máy.
ipconfig /flushdns
Nếu đang dùng proxy, hãy tạm tắt để thử truy cập trực tiếp. Nếu lỗi biến mất, kiểm tra lại cấu hình proxy. Lỗi xác thực proxy thường trả mã 407 chứ không phải 502; bài sửa lỗi 407 Proxy Authentication Required hướng dẫn chi tiết cho trường hợp đó.
Cách 7: Kiểm tra phạm vi và thời điểm
Từ đây là các bước dành cho chủ website. Thử nhiều URL, nhiều thiết bị và nhiều mạng. Ghi lại URL lỗi, thời gian, múi giờ, mã định danh yêu cầu nếu có và thao tác vừa thực hiện trước sự cố.
Cách 8: Đọc log cùng mốc thời gian
Đối chiếu log tại CDN, bộ cân bằng tải, Nginx hoặc Apache, ứng dụng và cơ sở dữ liệu theo cùng mốc thời gian. Log lỗi của Nginx thường nằm ở /var/log/nginx/error.log. Các thông báo như connect() failed, Connection refused hay upstream prematurely closed connection chỉ thẳng tới vấn đề giữa Nginx và ứng dụng. Có thể lọc nhanh bằng lệnh minh họa:
sudo tail -n 200 /var/log/nginx/error.log | grep -i upstream
Cách 9: Kiểm tra tiến trình ứng dụng và tài nguyên
Kiểm tra trạng thái dịch vụ ứng dụng, ví dụ PHP-FPM:
sudo systemctl status php8.2-fpm
Theo dõi CPU, RAM, ổ đĩa, số kết nối và số tiến trình. Nếu dịch vụ đã dừng do hết bộ nhớ, nhật ký hệ thống sẽ ghi nhận sự kiện tiến trình bị dừng. Khởi động lại dịch vụ chỉ là bước phục hồi tạm thời; vẫn cần tìm nguyên nhân khiến nó dừng.
Cách 10: Rà soát DNS, SSL và cấu hình upstream
Xác nhận địa chỉ IP, chứng chỉ, cổng và giao thức giữa các mắt xích. Với Nginx, kiểm tra chỉ thị proxy_pass hoặc fastcgi_pass có trỏ đúng địa chỉ và socket hay không. Sau khi đổi hosting, kiểm tra cả bản ghi DNS cũ còn được lưu ở CDN.
Cách 11: Hoàn nguyên thay đổi gần nhất
Nếu lỗi xuất hiện ngay sau khi cập nhật plugin, đổi cấu hình tường lửa hoặc CDN, hãy hoàn nguyên từng thay đổi một và kiểm tra lại sau mỗi bước để giữ được dấu vết nguyên nhân.
Cách 12: Liên hệ đúng đơn vị hỗ trợ
Gửi cho đơn vị hosting, CDN, nhà cung cấp proxy hoặc nhà mạng toàn bộ dữ liệu đã thu thập: URL, thời gian, log, mã định danh yêu cầu. Thông tin đầy đủ giúp họ kiểm tra đúng lớp hạ tầng và rút ngắn thời gian xử lý.
Xử lý 502 Bad Gateway theo từng nền tảng máy chủ
Mỗi kiến trúc máy chủ có điểm yếu riêng dẫn tới lỗi 502. Biết đặc điểm của nền tảng đang dùng giúp anh em đi thẳng tới nguyên nhân thay vì thử mò từng bước.
Nginx kết hợp PHP-FPM
Đây là cấu hình phổ biến nhất cho WordPress và các website PHP. Lỗi 502 thường do PHP-FPM dừng, socket sai đường dẫn hoặc quyền truy cập socket không đúng. Hãy kiểm tra chỉ thị fastcgi_pass trong cấu hình Nginx trùng với cấu hình listen trong tệp pool của PHP-FPM. Nếu dùng socket, người dùng chạy Nginx phải có quyền đọc ghi vào socket đó.
Khi lỗi xuất hiện vào giờ cao điểm, hãy xem log PHP-FPM có thông báo đã đạt giới hạn số tiến trình tối đa hay không. Tăng số tiến trình cần đi kèm tính toán RAM: mỗi tiến trình PHP có thể chiếm vài chục tới vài trăm megabyte tùy ứng dụng.
Node.js đứng sau Nginx
Với ứng dụng Node.js, Nginx thường chuyển tiếp tới một cổng cục bộ như 3000. Lỗi 502 xuất hiện khi ứng dụng bị sập do lỗi chưa được bắt, hết bộ nhớ hoặc đang khởi động lại sau khi triển khai phiên bản mới. Dùng trình quản lý tiến trình để tự khởi động lại ứng dụng khi sập, và chạy nhiều bản sao để khi một bản khởi động lại, các bản còn lại vẫn phục vụ.
Một lỗi hay gặp khác là ứng dụng chỉ lắng nghe trên một giao diện mạng khác với địa chỉ mà Nginx đang gọi tới, ví dụ ứng dụng nghe trên IPv6 trong khi Nginx gọi qua IPv4.
Ứng dụng chạy trong Docker
Khi ứng dụng chạy trong container, Nginx cần gọi đúng tên dịch vụ hoặc địa chỉ trong mạng Docker, không phải localhost. Container bị khởi động lại sẽ có thể nhận IP mới, nên nếu Nginx đã lưu IP cũ, lỗi 502 sẽ xuất hiện cho tới khi Nginx được tải lại. Dùng tên dịch vụ và cơ chế phân giải tên động giúp tránh vấn đề này.
Apache làm reverse proxy
Apache dùng mod_proxy để chuyển tiếp yêu cầu. Thông báo 502 Proxy Error kèm dòng Error reading from remote server thường cho biết ứng dụng phía sau đóng kết nối giữa chừng. Kiểm tra log lỗi của Apache và ứng dụng cùng mốc thời gian, đồng thời xem lại các tham số thời gian chờ của mod_proxy.
Website đặt sau CDN
Khi website đặt sau CDN, trang lỗi 502 có thể do CDN không kết nối được với máy chủ gốc hoặc do máy chủ gốc trả phản hồi lỗi. Hãy thử truy cập trực tiếp máy chủ gốc từ một máy được phép để xác định mắt xích lỗi. Nếu máy chủ gốc hoạt động bình thường, kiểm tra cấu hình SSL giữa CDN và máy chủ gốc, cùng danh sách IP của CDN trong tường lửa.
Bảng tra nhanh thông báo log
Thông báo trong log |
Ý nghĩa thường gặp |
Hướng xử lý |
|---|---|---|
Connection refused |
Ứng dụng không chạy hoặc sai cổng |
Khởi động ứng dụng, kiểm tra cổng |
No such file or directory (socket) |
Sai đường dẫn socket |
Sửa fastcgi_pass hoặc cấu hình pool |
Permission denied (socket) |
Nginx không có quyền truy cập socket |
Sửa quyền và người dùng của socket |
upstream prematurely closed connection |
Ứng dụng đóng kết nối giữa chừng |
Kiểm tra ứng dụng bị sập, hết RAM |
upstream sent too big header |
Header phản hồi quá lớn |
Tăng bộ đệm header hoặc giảm cookie |
Lỗi 502 khi dùng proxy để chạy tool
Với anh em chạy tool tự động hay quản lý tài khoản qua proxy, lỗi 502 có thể đến từ chính máy chủ proxy chứ không phải website đích.
Phân biệt lỗi do proxy và lỗi do website
Nếu mọi website đều trả 502 khi đi qua một proxy, nhưng truy cập trực tiếp bình thường, lỗi nằm ở proxy: node proxy mất kết nối ra Internet, máy chủ proxy quá tải hoặc cấu hình upstream của nhà cung cấp gặp sự cố. Nếu chỉ một website trả 502, kể cả khi truy cập trực tiếp, lỗi nằm ở website đó.
Lệnh minh họa dưới đây so sánh mã trạng thái khi đi trực tiếp và khi đi qua proxy:
curl -s -o /dev/null -w "%{http_code}\n" https://example.com
curl -s -o /dev/null -w "%{http_code}\n" -x http://USER:PASS@HOST:PORT https://example.com
Proxy dùng chung và hiệu ứng hàng xóm xấu
Với proxy dùng chung, hành vi của người dùng khác có thể khiến IP bị website đích hạn chế, hoặc khiến máy chủ proxy quá tải và trả lỗi 502 hàng loạt. Hiện tượng này được gọi là hiệu ứng hàng xóm xấu; bài Bad Neighbor Effect là gì giải thích chi tiết vì sao proxy chung dễ bị vạ lây.
Cấu hình tool để xử lý 502
Trong tool tự động, nên coi 502 là lỗi tạm thời có thể thử lại, nhưng cần giới hạn số lần và tăng dần thời gian chờ giữa các lần thử. Nếu một proxy liên tục trả 502 trong nhiều phút, hãy tạm loại proxy đó và báo cho nhà cung cấp. Bài các lỗi máy chủ proxy tổng hợp ý nghĩa và cách xử lý các mã lỗi khác thường gặp khi dùng proxy.
Tình huống thực tế: website WordPress báo 502 sau khi cập nhật
Một website WordPress chạy Nginx và PHP-FPM bắt đầu trả 502 ngẫu nhiên sau khi chủ website cập nhật một plugin xây dựng trang. Lỗi không xảy ra liên tục mà xuất hiện khoảng vài phút một lần, chủ yếu vào giờ có nhiều người truy cập.
Log Nginx cho thấy thông báo upstream prematurely closed connection. Nhật ký hệ thống cho biết tiến trình PHP-FPM liên tục bị dừng do vượt giới hạn bộ nhớ. Plugin mới tải toàn bộ thư viện giao diện cho mỗi yêu cầu, khiến mỗi tiến trình PHP tiêu tốn gấp ba lượng RAM so với trước.
Cách xử lý gồm hai bước: tạm hoàn nguyên plugin về phiên bản cũ để website hoạt động lại ngay, sau đó điều chỉnh số tiến trình PHP-FPM tối đa phù hợp với RAM của máy chủ trước khi cập nhật lại. Bài học là thay đổi từng yếu tố, ghi nhận kết quả rồi mới chuyển bước, thay vì khởi động lại máy chủ và hy vọng lỗi tự biến mất.
Cách hạn chế lỗi 502 Bad Gateway tái diễn
Sau khi khắc phục, chủ website nên bổ sung giám sát để phát hiện sớm và rút ngắn thời gian gián đoạn.

Giám sát để hạn chế lỗi 502 tái diễn
- Thiết lập cảnh báo về thời gian hoạt động, tỷ lệ lỗi 5xx, tài nguyên máy chủ và thời gian phản hồi của ứng dụng.
- Dùng kiểm tra sức khỏe dịch vụ, cơ chế tự khởi động lại và cân bằng tải phù hợp với lưu lượng.
- Lưu log tập trung, thống nhất múi giờ và mã định danh yêu cầu giữa proxy và ứng dụng.
- Kiểm tra tải trước các chiến dịch lớn; cập nhật theo từng đợt, sao lưu và có kế hoạch hoàn nguyên.
- Đặt giới hạn bộ nhớ và số tiến trình ứng dụng phù hợp với tài nguyên thực tế của máy chủ.
- Với tool dùng proxy, chọn nguồn proxy ổn định, kiểm tra định kỳ và chọn đơn vị có hỗ trợ khi kết nối phát sinh lỗi.
Nếu lỗi 502 phát sinh từ proxy trung gian, anh em có thể mua proxy ổn định tại ProxyVN, đội hỗ trợ trực 24/24 khi cần kiểm tra kết nối.
Xem thêm: Bad Neighbor Effect là gì? Vì sao dùng proxy chung dễ bị vạ lây?
Câu hỏi thường gặp về 502 Bad Gateway
Lỗi 502 có tự hết không?
Nhiều trường hợp lỗi chỉ kéo dài vài giây tới vài phút, khi tiến trình ứng dụng khởi động lại hoặc đợt quá tải qua đi. Nếu lỗi kéo dài, cần quản trị viên can thiệp.
Người dùng có làm gì gây ra lỗi 502 không?
Rất hiếm. Phần lớn lỗi 502 nằm phía máy chủ, nên việc xóa dữ liệu trình duyệt hay cài lại mạng thường không giúp ích gì nếu website đang thật sự gặp sự cố. Người dùng chỉ có thể gây ra khi dùng proxy cục bộ bị lỗi hoặc tiện ích trình duyệt can thiệp vào kết nối.
Khởi động lại máy chủ có phải cách sửa lỗi 502 tốt nhất?
Khởi động lại giúp website hoạt động trở lại nhanh, nhưng xóa mất nhiều dấu vết hữu ích trong bộ nhớ và các tiến trình đang chạy. Trước khi khởi động lại, hãy lưu lại log và trạng thái tài nguyên. Sau khi website hoạt động, vẫn cần tìm nguyên nhân gốc để lỗi không lặp lại vào lần cao điểm tiếp theo.
Lỗi 502 có làm website mất thứ hạng không?
Lỗi ngắn hạn gần như không ảnh hưởng. Lỗi kéo dài nhiều giờ hoặc lặp lại thường xuyên có thể khiến công cụ tìm kiếm giảm tần suất thu thập và tạm loại trang khỏi chỉ mục.
Vậy 502 Bad Gateway là gì? Đó là tín hiệu cho biết một máy chủ trung gian đã nhận phản hồi không hợp lệ từ máy chủ phía sau. Anh em nên xác định phạm vi và lưu bằng chứng trước khi thay đổi cấu hình. Khi cần kết nối ổn định cùng hỗ trợ xử lý sự cố, hãy liên hệ Proxy.vn - Nhà cung cấp dịch vụ proxy chất lượng hàng đầu Việt Nam để được tư vấn.