Lỗi 502 “bad gateway” là gì? Cách khắc phục lỗi “502 bad gateway”

502 bad gateway

Lỗi 502 bad gateway và cách khắc phục

lỗi 502 bad gateway và cách khắc phục lỗi 502 hiệu quả. cùng tìm hiểu nguyên nhân và cách fix lỗi 502 bad gateway…

Thỉnh thoảng dạo quanh một số website và diễn đàn bắt gặp lỗi 502 bad gateway, tôi băn khoăn không biết có khi nào website của mình gặp phải tình trạng này và thật là khó chịu nếu khách thăm đến website và gặp phải tình trạng này. trong bài này anz sẽ giúp bạn tìm hiểu về lỗi 502 bad gateway và cách khắc phục lỗi 502 này nhé!

Nguyên nhân gây ra lỗi 502 bad gateway

lỗi này thường xuất hiện khi:

  • sử dụng nginx làm proxy cho apache.
  • nginx chạy cùng php-fpm.
  • nginx chạy cùng với dịch vụ khác với vai trò là gateway.
  • cấu hình buffering/timeout chưa tốt.

Có nhiều kiểu dạng thông báo khác nhau như trong danh sách sau đây :

  • “502 bad gateway”
  • “502 service temporarily overloaded”
  • “error 502″
  • “temporary error (502)”
  • “502 proxy error”
  • “502 server error: the server encountered a temporary error and could not complete your request.”
  • “http 502″
  • “502. that’s an error.”
  • “bad gateway: the proxy server received an invalid response from an upstream server.”
  • “http error 502 – bad gateway”

Cách khắc phục lỗi 502 bad gateway

với người sử dụng trình duyệt web

  • Cách 1: xóa lược sử duyệt web chrome,firefox: Để xóa lịch sử duyệt web trên chrome, bạn mở trình duyệt (chrome) kích vào góc phải của trình duyệt, chọn lịch sử (history) hoặc nhấn tổ hợp phím (ctrl +h) để vào nhanh. Trong phần lịch sử, bạn chọn xóa dữ liệu duyệt web, tại đây bạn có thể chọn các mốc thời gian khác nhau, thậm chí có thể xóa mọi thứ.thì google chrome sẽ hoàn nguyên về gần như là lúc bạn mới cài đặt chrome luôn. Vậy là bạn đã xóa được lược sử web rồi. việc này khá đơn giản, bạn có thể sử dụng việc này để xóa lược sử mà bạn đã vào mà không muốn người khác biết.
  • Cách 2: vào bằng chế độ ẩn danh: Bạn có thể truy cập thử bằng chế độ ẩn danh website với chrome bạn nhấn tổ hợp phím (ctrl + shift + n) với firefox bạn dùng tổ hợp phím ( ctrl +shift +p)
  • Cách 3: bạn thử sử dụng bằng các trình duyệt khác, tôi xin liệt kê một số trình duyệt nhưchrome,yandex,cốc cốc, firefox,opera
  • Cách 4: đổi DNS máy tính

Nếu bạn đã sử dụng những cách trên mà vẫn không được. thì phần lớn nguyên nhân là máy chủ website chưa khắc phục xong. và bạn vui lòng quay lại trong thời gian gần nhất

Khi bạn gặp lỗi 502 bad gateway trên nginx thì việc đầu tiên là bạn phải coi file log của nginx trên vps, thông thường sẽ nằm tại “/var/log/nginx/error.log” nếu bạn cài đặt nginx theo hướng dẫn tại bài viết này. khi bạn mở file log ra và kéo xuống dưới cùng sẽ thấy có đoạn báo lỗi tương tự như sau “…upstream sent too big header while reading response header from upstream…” .

nguyên nhân của lỗi này là do dữ liệu trả về từ php-fpm cho nginx vượt mức giới hạn, do đó bạn cần tăng giới hạn này lên bằng cách thêm 2 dòng sau vào block http {…} của file cấu hình “/etc/nginx/nginx.conf” như sau :

http { #… fastcgi_buffers 64 64k; fastcgi_buffer_size 64k; #…}

fastcgi buffer là cách nginx xử lý dữ liệu trả về từ php-fpm để lưu trong bộ nhớ ram nhằm tăng tốc quá trình xử lý, giá trị của fastcgi buffer tuỳ thuộc vào bộ nhớ ram vps/server của bạn.

sau đó bạn lưu lại file cấu hình của nginx và khởi động lại nginx bằng lệnh sau trên centos :

service nginx restart

“502 bad gateway” là gì và cách sửa như thế nào? lỗi này có ý nghĩa gì đối với người dùng và chủ sở hữu trang web?

Cùng với lỗi 503, lỗi 504 và các lỗi máy chủ 500 khác, lỗi “502 bad gateway” (lỗi 502) là một sự xuất hiện bực bội có thể khá khó sửa nếu bạn không biết chắc chắn nơi cần tìm.

cho dù bạn là nhà phát triển web và một trong các trang web bạn tạo ra đang bị dính lỗi 502 hay bạn là người dùng đang cố gắng truy cập trang web và màn hình hiển thị lỗi 502, chúng tôi sẽ giải thích vấn đề này và cách khắc phục nó dưới đây.

lỗi 502 không phải là lỗi từ thiết bị hay do đường truyền mạng của bạn, nó là lỗi của chính trang web đó. đó là một trong những gì chúng tôi gọi là “mã trạng thái http”. mã này cho phép quản trị viên web biết những gì đang xảy ra với trang web của mình. nhưng không may, giống như nhiều lỗi 500 khác, nó không phải là một mô tả nguyên nhân cụ thể nào đó mà nó có thể là một loạt các lý do khác nhau dẫn đến tình trạng này.

ở cấp độ cơ bản, lỗi 502 có nghĩa là có sự cố khi kết nối giữa các máy chủ. lỗi 502 liên quan đến giao tiếp giữa máy chủ hoạt động như một cổng hoặc proxy đã chấp nhận phản hồi không hợp lệ từ máy chủ thượng nguồn (hoặc máy chủ gốc).

sự cố xảy ra khi máy chủ thượng nguồn và máy chủ cổng không thể đồng thuận về giao thức trao đổi dữ liệu, dẫn đến không thể hiển thị trang web. lỗi 502 thường có nghĩa là cài đặt cấu hình sai trong quá trình thiết lập trang web

lý do cho một phản hồi “502 bad gateway”

có nhiều lý do cho việc người dùng thấy lỗi 502 bad gateway xuất hiện trên màn hình của mình.

máy chủ quá tải – một máy chủ có thể dừng hoạt động nếu bộ nhớ của nó cạn kiệt do vô số khách truy cập trên trang web hoặc do tấn công ddos.

tường lửa chặn – tường lửa có thể chặn liên lạc giữa máy chủ cạnh và máy chủ nguồn. một số hệ thống bảo vệ ddos có thể phản ứng quá mức và chặn các yêu cầu từ hệ thống phân phối nội dung.

lập trình bị lỗi – đôi khi lỗi trong mã của trang web có thể khiến các yêu cầu không thể được trả lời chính xác, dẫn đến lỗi này hiển thị.

lỗi mạng – các sự cố dns, sự cố định tuyến và các sự cố liên quan đến isp cũng có thể dẫn đến lỗi 502 bad gateway.

thời gian chờ phần mềm máy chủ – lỗi này có thể xảy ra khi máy chủ web mất quá nhiều thời gian để hoàn thành và công cụ lưu vào bộ nhớ cache đạt đến giá trị thời gian chờ của nó. truy vấn chậm cũng có thể gây ra vấn đề này.

Cách sửa lỗi 502 bad gateway

thông thường, những lỗi này sẽ tự biến mất và làm mới trang trình duyệt web là tất cả những gì cần thiết để có được trang web bạn đang tìm kiếm. nếu điều này xảy ra, sự cố chỉ đơn giản là do máy chủ tạm thời bị quá tải.

nếu lỗi tiếp tục xảy ra, sử dụng một dịch vụ web như “down for everyone or just me?” sẽ cho phép bạn biết liệu sự cố này có phổ biến không. việc sử dụng proxy của bên thứ ba như “hide my ass” đôi khi có thể loại bỏ các vấn đề gây ra bởi một isp cụ thể (isp chặn quyền truy cập vào một trang web cụ thể).

nếu xảy ra thường xuyên, bạn sẽ cần phải điều tra lỗi để tìm giải pháp. kiểm tra nhật ký máy chủ web tại thời điểm xảy ra lỗi sẽ là một điểm tốt để bắt đầu. nếu bạn là chủ sở hữu của trang web, bạn có thể kiểm tra fqdn (fully qualified domain name-tên miền đủ điều kiện). bạn cũng có thể kiểm tra một máy chủ thông qua ping hoặc công cụ truy vết.

Mỗi khi mở một site lên, trình duyệt sẽ gửi nhiều request tới nhiều web server. các web server sau đó sẽ xử lý những request này và gửi về status code http cùng với dữ liệu được yêu cầu. thông thường http status code không hiển thị trừ khi có lỗi xảy ra. đây là các server thông báo với nhau để end-user biết có gì đó không ổn.

502 bad gateway là một trong các http status codes xảy ra trong suốt qua trình dựng web của bạn. mặc dù không thường xuyên như lỗi 500 internal server error hoặc 503 service unavailable error, nó vẫn có thể khiến bạn đau đầu. vì vậy, bài hướng dẫn này tập trung tìm nguyên do và sửa lỗi 502 bad gateway error.

http status codes bắt đầu bằng số “5” liên quan đến lỗi giao tiếp giữa các server. mặc dù chính xác lỗi là gì còn tùy trường hợp, nhưng thường nó liên quan nhiều đến phía server hơn.

gặp lỗi 502 bad gateway có nghĩa là server gốc gửi phản hồi không hợp lệ tới server khác ở giữa như là gateway và proxy. vì tất cả request trên web đều được chuyển đi qua nhiều gateway, nên có thể rất khó để biết chính xác lỗi này nằm ở đâu hoặc process nào gây lỗi. tuy nhiên, vẫn có vài cách bạn thể tham khảo để sửa:lỗi 502 bad gateway error

Mặc dù lỗi 502 bad gateway thường liên quan đến server, nhiều khi bạn cũng sẽ thấy hiện lỗi 502 bad gateway nginx, nó cũng có thể bắt nguồn từ việc cấu hình sai hoặc vấn đề từ phía client. vì vậy, chúng tôi sẽ chỉ một số bước cơ bản để xử lý 2 trường hợp này. mặc dù lấy ví dụ từ mã nguồn wordpress, nhưng bạn cũng có thể áp dụng tương tự cho các script khác:

  1. tải lại trang
    cách đầu tiên có thể là cách đơn giản nhất. đợi 1 hoặc 2 phút rồi tải lại trang là xong. trong một số trường hợp, lỗi này là tạm thời và chỉ cần f5, refresh là trang sẽ hoạt động lại bình thường. trong thời gian đó, bạn cũng có thể kiểm tra xem website này có bị down hay không bằng các công cụ online. kiểm tra xem website có bị down hay không
  2. xóa browser cache
    nếu lỗi vẫn còn, và website không đang bị down thì có khả năng là cache trình duyệt của bạn gây ra lỗi. sửa lỗi 502 bad gateway nginx này bằng cách xóa cách trình duyệt là xong.
  3. thử với trình duyệt khác
    kiểm tra thử lại website bằng một trình duyệt khác hoặc trong mode incognito. nó sẽ cho bạn xem lỗi có phải nằm ở phía trình duyệt hay không.
  4. flush dns
    502 bad gateway error cũng có thể do vấn đề liên quan đến dns, như là địa chỉ ip bị cached không đúng giá trị. vậy để sửa lỗi bạn flush dns. đây là bài hướng dẫn làm thế nào để flush dns trên windows, mac, và linux.

bạn cũng có thể thử dùng dns khác thay vì dns mặc định như dùng google public dns.

  1. thử trên thiết bị khác
    nếu không có cách nào ở trên giúp bạn loại bỏ lỗi 502 bad gateway hiện lên màn hình, hãy thử kiểm thử lại trên một máy tính khác hoặc trên điện thoại, tốt nhất là dùng hẵn một đường mạng khác như đường mạng 3g/4g. đây là bước cuối cùng để kiểm thử xem lỗi có phải do phía máy bạn hay không.
  2. kiểm lại error log
    nếu error 502 hay lỗi 502 hiện lên vì thay đổi hoặc cập nhật nào đó, có thể đó chính là nguyên nhân gây lỗi, bản cập nhật của website đã gây lỗi. vì vậy có thể bạn cần mở error log để tìm thêm manh mối. trong wordpress, bạn có thể kích hoạt error logging bằng cách thêm dòng sau vào trong wp-config.php:

define( ‘wp_debug’, true );
define( ‘wp_debug_log’, true );
define( ‘wp_debug_display’, false );
tất cả các entries lỗi sẽ xuất hiện trong file wp-contents/debug.log.wordpress error log

  1. kiểm tra lại plugins
    có thể nói bước này khá quan trọng, kiểm tra lại plugins và extensions. các lỗi gây ra bởi caching plugin có thể dẫn đến error 502 hay 502 bad gateway hiện lên. cách đơn giản nhất nhất để xác nhận điều này là vô hiệu toàn bộ plugins trong thời gian ngắn. để làm vậy, di chuyển tới thư mục wp-content rồi đổi tên thư mục plugins.vô hiệu toàn bộ plugin wordpress

nếu website hoạt động lại sau khi toàn bộ plugin bị vô hiệu, thì tức là một trong các plugin đã gây lỗi, bạn có thể đổi tên thư mục thành plugins như ban đầu. sau đó thử vô hiệu từng plugin một để xác định chính xác plugin nào gây lỗi.vô hiệu plugin wordpress

  1. kiểm tra lại cdns
    một nguyên nhân khác gây lỗi 502 bad gateway nginx là do cdns hoặc ddos mitigation services. một ví dụ điển hình là cloudflare, lỗi 502 bad gateway có thể xảy ra giữa 2 phiên bản gặp xung đột gì đó, tùy thuộc vào từng trường hợp.cloudflare 502 bad gateway

màn hình này thể hiện lỗi trên phía cloudflare, để sửa lỗi thì bạn cần liên hệ với đội hỗ trợ của cloudflare. ngoài ra bạn cũng có thể vô hiệu cloudflare, mặc dù phải nhớ là dns propagation có thể mất vài giờ để hoàn tất.cloudflare 502 bad gateway error

tuy nhiên, nếu bạn nhìn thấy lỗi trên, có nghĩa là lỗi nằm ở phía nhà cung cấp hosting.

  1. liên hệ đội ngũ hỗ trợ kỹ thuật
    nếu không có giải pháp nào ở trên sửa được lỗi 502 bad gateway error, vậy tốt nhất là liên hệ lại với đội ngũ hỗ trợ của bạn. trong quá trình mô tả lỗi, hãy mô tả kỹ các bước trước khi gây lỗi, và cung cấp cho họ thấy bạn đã làm gì để sửa lỗi. việc cung cấp càng nhiều thông tin cần thiết, lỗi sẽ nhanh chóng được xử lý hơn!

Trong bài hướng dẫn này, chúng ta đã được biết về lỗi 502 bad gateway error là gì và làm thế nào để sửa nó với các cách đơn giản nhưng hữu hiệu. Nếu bạn có thêm thủ thuật nào khác, hay giải pháp nào cho vấn đề này, hãy chia sẽ với mọi người bằng cách để lại bình luận bên dưới nhé.!

Hướng dẫn các bạn sửa lỗi 502 Bad Gateway Nginx

Thỉnh thoảng khi cấu hình server web chúng ta thường thấy lỗi 502 bad gateway với nginx. Bạn sẽ tìm thấy được lỗi chi tiết trong phần logs của server web. Mã http thì cũng giống như mình đã nêu ở phần trên

Nguyên nhân chính dẫn đến lỗi 502 bad gateway nginx

Nginx làm proxy cho apache website service: Nếu bạn dùng Nginx làm proxy cho Apache. Khi Apache chết hoặc xữ lý không kịp luồn dữ liệu (overload ) sẽ xảy ra lỗi 502. Sửa lỗi này bạn chỉ cần restart lại Apache server để web server của bạn thoát ra khỏi tình trạng overload tiến trình. Sau đó bạn hãy xem lại cấu hình web của để tối ưu hoá nó nhé.

Bạn chưa start php-fpm: Khi bạn kết hợp Nginx với Php-fpm. Nếu php-fpm của bạn chưa chạy thì sẽ xảy ra lỗi 502. Ngoài những lỗi do config sai ra thì giới hạn thời gian xử lý của nginx và php-fpm cũng là lý do gây nên lỗi 502 bad gateway. Nguyên nhân của lỗi này là thời gian chờ của nginx hoặc php-fpm hết hạn với những tiến trình đồi hỏi thời gian xử lý lâu hơn.

Để tăng giới hạn thời gian xử lý của php-fpm bạn hãy chỉnh max_execution_time trong file php.ini. Đơn vị thời gian tính bằng giây (s)

Nếu Nginx timeout của bạn đã tương đối cao và vẫn bị lỗi 502 bad bad gateway thì hãy tăng set_time_limit() trong code php nhé. Tham khảo thêm về set_time_limit() của php tại đây nhé:

Từ khóa:

  • 502 bad gateway fix
  • 502 bad gateway nginx fix
  • 502 bad gateway wordpress
  • 502 bad gateway apache
  • 502 bad gateway mac
  • 502 bad gateway nginx/1.10.3 (ubuntu)
  • 502 bad gateway cloudflare
  • 502 bad gateway php
  • 502 bad gateway nginx
  • lỗi 502 bad gateway trên điện thoại
  • lỗi 502 bad gateway wordpress
  • 502 bad gateway nginx wordpress
  • 502 bad gateway vpssim
  • 502 bad gateway nginx php
  • error 502 bad gateway cloudflare
  • ubuntu 502 bad gateway

Leave a Reply

Your email address will not be published. Required fields are marked *

Hotline