Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wordpress-seo domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vinascript/html/wp-includes/functions.php on line 6114
Lỗi 504 Gateway Timeout là gì và 9 cách khắc phục lỗi này - VinaScript

Latest Post

Triển khai dự án PHP, Mysql với Nginx trên Docker Tìm hiểu về HTML – Ưu điểm, nhược điểm và cách hoạt động của HTML

Lỗi 504 Gateway Timeout xuất hiện khi máy chủ không nhận được phản hồi trong khoảng thời gian cho phép từ một máy chủ khác mà nó đang cố liên lạc. Tình trạng này không chỉ gây phiền hà cho người truy cập website mà còn làm giảm chất lượng trải nghiệm người dùng và tác động xấu đến hiệu suất của trang web. Trong bài viết này, chúng ta sẽ đàm phán chi tiết về lỗi 504 Gateway Timeout và cách xử lý để khắc phục tình trạng này một cách hiệu quả.

Lỗi 504 Gateway Timeout là gì và 9 cách khắc phục lỗi này
Lỗi 504 Gateway Timeout là gì và 9 cách khắc phục lỗi này

504 Gateway Timeout nghĩa là gì?

Lỗi 504 Gateway Timeout xuất hiện khi máy chủ mất quá nhiều thời gian để nạp trang web vào trình duyệt của bạn, và không thể hoàn thành yêu cầu trong khung thời gian quy định. Khi bạn truy cập một trang web, trình duyệt gửi yêu cầu đến máy chủ lưu trữ trang web. Nếu mọi thứ diễn ra thành công, máy chủ sẽ phản hồi với mã trạng thái 200 OK và hiển thị trang web.

Tuy nhiên, nếu máy chủ không thể hoàn thành yêu cầu trong thời gian quy định, trình duyệt sẽ hiển thị lỗi 504 Gateway Timeout. Lỗi này cho biết máy chủ đóng vai trò là cổng gateway hoặc proxy và không thể nhận được phản hồi từ máy chủ trung ương, điều này là điều cần thiết để hoàn thành yêu cầu.

Các nguyên nhân của lỗi 504 Gateway Timeout

Có nhiều nguyên nhân dẫn đến lỗi 504 Gateway Timeout. Một số liên quan đến tình trạng quá tải lưu lượng tạm thời trên website, hoặc một tài nguyên nào đó mất quá nhiều thời gian để nạp.

Dưới đây là những nguyên nhân phổ biến nhất của lỗi 504:

Tường lửa: một số tường lửa chặn yêu cầu từ các ISP hoặc CDN nhất định, do cơ chế bảo vệ và giảm nhẹ DDoS của chúng.

Tên miền không thể phân giải: một tên miền không thể được phân giải sang địa chỉ IP, dẫn đến việc không thể truy cập vào website hoặc dịch vụ liên quan. Vấn đề này xảy ra khá phổ biến nếu bạn vừa chuyển website sang một địa chỉ IP hoặc một hosting nameserver khác.

Vấn đề kết nối: khi gặp lỗi 504 Gateway Timeout trên nhiều thiết bị kết nối vào cùng một mạng, thì có nghĩa là nguyên nhân xuất phát từ một số vấn đề kết nối tạm thời trên thiết bị mạng của bạn.

Máy chủ bị quá tải: máy chủ web thiếu hụt tài nguyên sẽ không thể đảm đương lưu lượng truy cập quá lớn, khiến nó bị quá tải và phản hồi yêu cầu chậm hơn, dẫn đến lỗi 504.

Thiếu hụt PHP worker: PHP worker là các quy trình hoặc luồng trong môi trường máy chủ, chuyển đảm nhận các yêu cầu gửi đến và thực thi mã PHP. Nếu không có đủ PHP worker, website có thể không xử lý được nhiều yêu cầu cùng lúc.

Sự cố DNS: một số sự cố DNS bao gồm cấu hình DNS sai, hoặc cache DNS bị lỗi hoặc “quá đát”.

Các biến thể của lỗi 504 Gateway Timeout

Lỗi 504 Gateway Timeout có thể phát sinh ở nhiều tình huống khác nhau, tùy thuộc vào cấu hình của máy chủ, trình duyệt và hệ điều hành. Tuy nhiên, đối tượng chung của lỗi này thường liên quan đến việc máy chủ không nhận được phản hồi trong khoảng thời gian cho phép từ một máy chủ trên cấp cao hơn trong cấu trúc mạng.

Dưới đây là các biến thể khác nhau của lỗi 504:

504 gateway timeout 2

504 Gateway Timeout NGINX: NGINX là một phần mềm máy chủ web phổ biến, đóng vai trò như một proxy đảo ngược, cân bằng tải, hoặc cache HTTP. Nếu NGINX không nhận được phản hồi từ máy chủ upstream trong khoảng thời gian cụ thể, nó sẽ trả về lỗi 504 Gateway Timeout trên máy khách.

504 gateway timeout 3

Gateway time-out: đây là một biến thể khác của lỗi 504, xuất phát từ việc yêu cầu không được phản hồi trong khoảng thời gian cho phép.

504 gateway timeout 4

HTTP Error 504: Google Chrome đôi lúc cho ra miêu tả lỗi là HTTP ERROR 504, khi không thể tiếp cận được với website được yêu cầu.

504 gateway timeout 5

Error 504 hoặc 504 Error: trên hệ điều hành Android, lỗi được thể hiện ngắn gọn là Error 504 và không kèm thêm thông tin gì.

504 gateway timeout 6

504 Gateway Time-out. The server didn’t respond in time: như miêu tả, lỗi này xuất hiện khi máy chủ không phản hồi trong thời gian cho phép.

504 gateway timeout 7

This site can’t be reached. Domain took too long to respond: lỗi này chỉ rõ rằng trình duyệt không thể thiết lập kết nối đến tên miền được yêu cầu trong khoảng thời gian cho phép.

504 gateway timeout 11

HTTP Error 504 – Gateway Timeout: biến thể này xuất hiện trên macOS.

Cách khắc phục lỗi 504 Gateway Timeout

Trong đa phần các trường hợp, nguyên nhân của lỗi 504 nằm ở máy chủ. Thỉnh thoảng, lỗi xuất hiện do các vấn đề trên máy khách. Dưới đây là cách dò lỗi đối với cả khách ghé thăm website lẫn chủ website.

Làm mới trang

Làm mới trang sẽ giúp giải quyết lỗi 504 Gateway Timeout nếu nguyên nhân lỗi là do lưu lượng truy cập website quá cao. Nếu máy chủ nhận quá nhiều yêu cầu mà nó không thể đảm đương được, làm mới lại trang có thể giúp máy chủ hoàn thành yêu cầu của bạn.

Cách làm mới trang là bấm nút Refresh trên trình duyệt hoặc F5 trên bàn phím. Nếu dùng macOS, bấm tổ hợp phím Cmd + R. Bạn cũng có thể xoá cache và buộc làm mới trang bằng cách bấm tổ hợp phím Ctrl + F5.

Kiểm tra cài đặt proxy

Sử dụng một máy chủ proxy để duyệt web riêng tư có thể là nguyên nhân dẫn đến lỗi 504. Một số máy chủ proxy chặn truy xuất đến các trang web nhất định dựa trên địa chỉ IP của chúng. Ngoài ra, cài đặt proxy sai cũng dẫn đến lỗi 504 Gateway Timeout.

Kiểm tra xem có phải cài đặt proxy của bạn là nguyên nhân gây ra vấn đề không, bằng cách tắt proxy trên máy và tải lại trang. Ví dụ, trên Windows bạn làm như sau:

504 gateway timeout 8

– Bấm nút Start và chọn biểu tượng hình bánh răng để mở ứng dụng Settings.

– Bấm vào biểu tượng Network & Internet

504 gateway timeout 9

– Chọn Proxy từ cột bên trái và tắt Use a proxy server.

– Tải lại website để xem lỗi đã được giải quyết chưa

Khởi động lại router

Nếu chỉ mình bạn không truy cập được website, và các giải pháp trên đều “bó tay”, thì vấn đề phần cứng và thiết lập phần mềm cho router chưa phù hợp có thể là nguyên nhân. Thử khởi động lại thiết bị mạng và sau đó tải lại website để xem thế nào!

Liên hệ admin website

Nếu lỗi liên tục xảy ra trên nhiều thiết bị và trình duyệt khác nhau, hãy cân nhắc liên hệ admin của website.

Kiểm tra mức độ sử dụng tài nguyên

Chủ website có thẻ kiểm tra host xem liệu website đã đạt đến giới hạn lưu  lượng của host hay chưa. Nếu có, hãy cân nhắc nâng cấp lên gói cao hơn.

Thay đổi thời gian thực thi PHP

Nếu thiếu hụt tài nguyên là nguyên nhân gây ra lỗi 504, thử kéo dài thời gian thực thi tối đa của các script PHP. Nếu một script PHP tốn quá nhiều thời gian để thực thi hơn so với thông thường, nó có thể gây ra lỗi 504 Gateway Timeout.

Để tăng thời gian thực thi tối đa, bạn cần chỉnh sửa tập tin .htaccess, cài đặt thêm plugin Google Pagespeed Insights, hoặc thay đổi cấu hình PHP trong cPanel.

Giá trị mặc định của thời gian thực thi mã là 30 giây. Tăng giá trị max_execution_time lên 60 và lưu thay đổi. Bạn cũng có thể tăng lên đến 120 – 180 nếu vấn đề tiếp diễn.

Cấu hình DNS

Vấn đề về DNS có thể là nguyên nhân gây lỗi 504 Gateway Timeout cả trên máy chủ và máy khách. Trong trường hợp máy chủ, điều này thường xảy ra khi địa chỉ IP của website không được giải quyết, đặc biệt là khi website chuyển sang một tên miền hoặc máy chủ mới và thay đổi này chưa được cập nhật toàn cầu. Quá trình chuyển đổi DNS thường mất từ 28 đến 48 giờ để hoàn tất.

Nếu vấn đề xảy ra ở máy khách, có thể giải quyết bằng cách dọn dẹp cache DNS từ hệ điều hành. Việc này giúp loại bỏ mọi thông tin cache lỗi hoặc “quá đát” từ hệ thống, có thể là nguyên nhân chính gây ra lỗi 504 Gateway Timeout.

504 gateway timeout 10

Kiểm tra error log

Kiểm tra error log để xem có đoạn mã nào trên website gây ra lỗi 504 Gateway Timeout không. Để tìm error log, vào thư mục /wp-content/ bằng File Manager hoặc trình FTP. Trong thư mục, tìm tập tin debug.log. Tập tin này chứa mọi lỗi WordPress, và các cảnh báo, lưu ý của hệ thống.

Kiểm tra plugin

Trong trường hợp cấu hình không đúng hoặc không tương thích, các plugin WordPress bên thứ ba có thể gây ra lỗi 504 Gateway Timeout. Một ví dụ cụ thể là khi một số plugin trong hệ thống bộ nhớ đệm gửi quá nhiều yêu cầu đến máy chủ, làm cho PHP worker quá tải và kết quả là lỗi 504.

Để kiểm tra xem liệu lỗi có xuất phát từ plugin hay không, bạn có thể tạm thời tắt tất cả các plugin. Sử dụng File Manager hoặc trình FTP, bạn truy cập vào thư mục /wp-content/ và đổi tên thư mục “plugins” để tạm thời vô hiệu hóa tất cả các plugin WordPress.

Nếu sau khi tắt các plugin mà lỗi 504 Gateway Timeout được giải quyết, bạn có thể bắt đầu xác định xem plugin cụ thể nào đang gây ra vấn đề. Bạn khôi phục lại tên gốc của thư mục “plugins” và sau đó tắt lần lượt từng plugin để xác định nguồn gốc của vấn đề.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *