Bạn truy cập vào một website và gặp phải lỗi 504 Gateway Time-out? Bạn băn khoăn không biết tại sao lại xuất hiện lỗi này và có cách nào khắc phục không? Vậy hãy cùng tham khảo bài viết dưới đây, Mauwebsite sẽ giúp bạn hiểu rõ hơn về lỗi 504 và cách xử lý nhanh chóng.
Lỗi 504 gateway time-out là gì?
Lỗi 504 Gateway Time-out là một lỗi thuộc về phía máy chủ (server). Lỗi 504 xuất hiện khi web server không nhận được phản hồi kịp thời từ một máy chủ khác khi nó load một trong các trang web của bạn.
Hiểu một cách đơn giản, khi máy chủ web giao tiếp không đủ nhanh, server không thể kết nối đến upstream server. Lỗi được thông báo tới người truy cập thay vì phải có một giao diện thông thường.
Cách hiển thị của lỗi 504 Gateway Time-out
Lỗi 504 Gateway Time out hiển thị thông báo dưới nhiều dạng khác nhau. Bạn sẽ gặp một số thông báo lỗi như sau:
- 504 Gateway Time-out
- HTTP Error 504 – Gateway Timeout
- Gateway Timeout Error
- Gateway Timeout (504)
- 504 Error
- HTTP 504
Nguyên nhân gây lỗi 504 Gate Time-out
Lỗi 504 Gateway time-out tương đối chung chung, bạn khó mà xác định được chính xác nguyên nhân của vấn đề. Theo các chuyên gia thì lỗi 504 có thể xuất hiện do một số lý do sau:
- Quá tải lượt truy cập vào website. Thông thường, khi quá 5000 lượt truy cập một ngày sẽ dễ dẫn tới lỗi 504 Error.
- Quá tải Database đo lượng request lớn tới web server. Hiện tượng này có thể do người bạn hoặc người dùng khác trên cùng một server.
- Website có nhiều wc_sessions với WooCommerce. Nếu check LOG sẽ có nhiều truy vấn SQL tới _wc_sessions_xxx and_wc_session_expires_xxx.
- Server gặp vấn đề về kết nối hoặc một vấn đề nào đó từ phía server. Bạn phải trao đổi với quản trị web thì mới biết được.
Khi xác định được cơ bản lỗi 504 Gateway Time-out là do đâu thì bạn sẽ có hướng khắc phục phù hợp.
Hướng dẫn cách khắc phục lỗi 504 Gateway Time-out
Ở bài viết này, chúng tôi hướng dẫn bạn 7 cách sửa lỗi Gateway Timeout (504) như sau:
Cách 1: Tìm lỗi kết nối với máy chủ
Hầu hết các trang web đều tồn tại nhờ dựa trên các máy chủ (server) hoặc đơn vị thứ 3 cung cấp hosting. Nếu server bị sập vì bảo trì hay một số lý do nào khác, website có thể đưa ra lỗi như 504 Gateway Time-out.
Cách duy nhất để bạn khắc phục sự cố này là đợi server hoàn tất công việc bảo trì hoặc khắc phục sự cố lỗi.
Cách 2: Kiểm tra server log
Các máy chủ log sẽ cung cấp thông tin chi tiết về tình trạng cũng như trạng thái server. Việc kiểm tra các server log sẽ giúp tìm thấy thông tin đáng báo động và xử lý.
Cách 3: Kiểm tra sự thay đổi của DNS
Trong trường hợp bạn đã thay đổi host server thay đã chuyển đến một địa chỉ IP mới, DNS server của website cũng sẽ bị thay đổi. Việc này sẽ khiến bạn gặp lỗi 504 Gateway Time-out.
Khi đó, website sẽ không hoạt động được cho đến khi thay đổi DNS có hiệu lực hoàn toàn. Việc thay đổi có thể mấy khoảng vài giờ, bạn hãy đợi thử nhé.
Cách 4: Lược code để tìm lỗi
Nếu có lỗi trong code web, server có thể không trả lời chính xác yêu cầu từ mạng phân phối nội dung. Khi đó, bạn sẽ thực hiện quy trình debug và mô phỏng tình huống xảy ra lỗi 504. Bạn sẽ xem được lỗi cũng như thời điểm chính xác xảy ra sự cố đó.
Cách 5: Sửa cấu hình firewall lỗi
Firewall được mệnh danh là người gác cổng cho website. Nó giúp bảo vệ trang web khỏi tấn công DDoS hoặc những truy cập độc hại. Đôi khi, cấu hình Firewall có thể coi các yêu cầu từ mạng bên ngoài là cuộc tấn công vào máy chủ của bạn. Khi đó, nó sẽ từ chối và thông báo lỗi 504 Gateway Time-out. Bạn có thể kiểm tra cấu hình Firewall để xác định sự cố và khắc phục.
Cách 6: Cấu hình lại nginx và php-fpm
Nếu chỉnh sửa lại cấu hình, bạn có thể thực hiện theo bước sau đây:
- Bước 1: Sửa file cấu hình php-fpm: Bạn đổi vi /etc/php-fpm.d/www.conf thành request_terminate_timeout = 300.
- Bước 2: Sửa file php.ini: Bạn đổi vi /etc/php.ini thành max_execution_time = 300.
- Bước 3: Thay đổi cấu hình file Virtual Host hoặc default. Bạn sửa vi /etc/nginx/conf.d/default.conf hoặc thêm/sửa fastcgi_read_timeout 300; fastcgi_buffers 512 64k; fastcgi_buffer_size 512k.
- Bước 4: Sau đó, bạn khởi động lại nginx và php-fpm bao gồm: service nginx restart và service php-fpm restart.
Cách 7: Sử dụng Woocommerce
Với các website dùng WP, bạn có thể sử dụng WooCommerce và thực hiện các bước như sau:
- Bước 1: Mở WooCommerce, vào System Status và chọn tiếp clear all sessions.
- Bước 2: Nếu bước một thực hiện không thành công, bạn login vào PHPMYADMIN và chạy lại lệnh SQL DELETE FROM wp_options WHERE option_name LIKE ‘_wc_session_%’ OR option_name LIKE ‘_wc_session_ expires _%’.
- Bước 3: Bạn sử dụng FTP hoặc sửa lại file .htaccess và file robot.txt. Sau đó, bạn thêm vào dòng User-agent: *, Disallow: /*add-to-cart=*.
Ngoài ra, khi sử dụng website Joomla, bạn cũng có thể gặp báo lỗi ở bảng xxx_session và dùng Repair table để sửa lại bảng đó.
Cách 8: Liên hệ nhà cung cấp dịch vụ internet
Nếu bạn không khắc phục được lỗi với các cách trên, bạn hãy liên hệ với đơn vị cung cấp dịch vụ internet như VPS, hosting, server,… để thông báo tình hình và được hỗ trợ khắc phục lỗi nhanh chóng.
Với những đơn vị sở hữu website thì việc tìm một đơn vị cung cấp dịch vụ máy chủ chất lượng sẽ giúp bạn giảm thiểu tối đa những vấn đề lỗi như 504 Gateway Time – out và được hỗ trợ tốt nhất.
Trên đây là thông tin chia sẻ về lỗi 504 Gateway Time-out là gì và các cách khắc phục lỗi 504 Gateway Time-out nhanh và hiệu quả nhất. Nếu trong quá trình khắc phục lỗi có gặp khó khăn, hãy bình luận ngay bên dưới để được hỗ trợ nhanh nhất bạn nhé.
Xem thêm: