Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504

Tôi đang làm việc với API của bên thứ ba và nó trả về trạng thái 400 HTTP khi bạn mắc lỗi. Khi sử dụng Postman, trang lỗi 400 HTTP hiển thị như mong đợi, nhưng khi sử dụng Curl của PHP, trang chỉ tải trong khoảng một phút, sau đó nó sẽ cho tôi một thời gian chờ "504 - và tôi cần đóng trình duyệt để có thể Để truy cập lại trang. Khi yêu cầu Curl hợp lệ (API trả về 200 OK), nó hoạt động bình thường.

Câu hỏi của tôi là, tại sao Curl lại gây ra lỗi 504 thay vì 400? Và tại sao nó bỏ qua curlopt_connecttimeout và curlopt_timeout?

Dưới đây là mã Curl của tôi (cả hai biến số $ mã thông báo, $ tải trọng và $ được khai báo và hợp lệ):

$ch = curl_init("https://api.mercadolibre.com/items?access_token=$token");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "User-Agent: Alcavie/" . $config['version'],
    "Accept: application/json",
    "Content-Type: application/json",
    //"Accept-Encoding: gzip, deflate, br",
    //"Connection: keep-alive"
));

$error = false;
try{
    $result = curl_exec($ch);
    $resultJson = json_decode($result);
}catch(\Exception $e){
    var_dump($e);
    $error = true;
    exit;
}
curl_close($ch);

Tôi có một cam ip và tôi sử dụng phương thức GET để bật báo thức.

Khi tôi sử dụng trình duyệt, mọi thứ đều ổn

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"

Nếu cố gắng sử dụng tệp PHP này, tôi luôn có được "504 Gateway Time Out"


Ai đó có thể giúp tôi?

Cảm ơn

Hỏi ngày 8 tháng 4 năm 2014 lúc 12:46Apr 8, 2014 at 12:46

Tôi nghĩ rằng bạn đang yêu cầu một số tập lệnh từ cùng một máy chủ và

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
5 có thể chỉ do một quy trình phụ trợ PHP, vì vậy khi bạn yêu cầu từ trình duyệt, chỉ có một yêu cầu và nhận được máy chủ.

Nếu bạn đang sử dụng PHP-CGI, định cấu hình biến môi trường trước khi bắt đầu PHP-CGI, hy vọng nó sẽ giúp.

Đặt PHP_FCGI_Children = 0

Đặt PHP_FCGI_MAX_REQUESTS = 10000`

Kiểm tra xem phần phụ trợ của bạn có thể xử lý đồng thời nhiều yêu cầu không và tập lệnh của bạn bằng cách nào đó không tạo ra cái nhìn chết (yêu cầu đầu ra của chính nó).

Kiểm tra nhật ký FCGI. Nếu điều đó không giúp ích, hãy tăng mức gỡ lỗi trên Nginx.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504

Đã trả lời ngày 22 tháng 8 năm 2014 lúc 13:35Aug 22, 2014 at 13:35

Tôi nghĩ rằng bạn đang yêu cầu một số tập lệnh từ cùng một máy chủ và

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
5 có thể chỉ do một quy trình phụ trợ PHP, vì vậy khi bạn yêu cầu từ trình duyệt, chỉ có một yêu cầu và nhận được máy chủ.

Nếu bạn đang sử dụng PHP-CGI, định cấu hình biến môi trường trước khi bắt đầu PHP-CGI, hy vọng nó sẽ giúp.

Đặt PHP_FCGI_Children = 0

Đặt PHP_FCGI_MAX_REQUESTS = 10000`

Kiểm tra xem phần phụ trợ của bạn có thể xử lý đồng thời nhiều yêu cầu không và tập lệnh của bạn bằng cách nào đó không tạo ra cái nhìn chết (yêu cầu đầu ra của chính nó).

Kiểm tra nhật ký FCGI. Nếu điều đó không giúp ích, hãy tăng mức gỡ lỗi trên Nginx.

Lỗi thời gian chờ 504 cổng là một trong những lỗi HTTP 5xx phổ biến nhất mà chủ sở hữu trang web và khách truy cập trang web phải đối mặt. Đối với nhiều blog WordPress và nền tảng thương mại điện tử, việc biết cách sửa lỗi máy chủ như thế này là rất quan trọng để giữ cho khách truy cập kiếm được của họ không bị trả đến các trang web của đối thủ cạnh tranh.504 Gateway Timeout error is one of the most common HTTP 5xx errors faced by website owners and site visitors. For many WordPress blogs and ecommerce platforms, knowing how to fix server errors like this is crucial to keep their hard-earned visitors from bouncing to competitor sites.

Vì lỗi thời gian chờ của cổng 504 không cho bạn biết lý do tại sao nó xảy ra, nó khó có thể xác định được những gì mà gây ra thời gian chờ máy chủ. Bài viết này sẽ giúp bạn hiểu chi tiết về nó, tìm hiểu cách chẩn đoán nguyên nhân của nó, và sau đó sửa nó.

Sau khi thử tất cả các giải pháp khác nhau được đề cập trong bài đăng, trang web của bạn sẽ hoạt động ngay lập tức.

Nghe có vẻ thú vị? Hãy để lặn xuống!

Thích xem phiên bản video?

Lỗi thời gian chờ 504 cổng là một trong những lỗi HTTP 5xx phổ biến nhất mà chủ sở hữu trang web và khách truy cập trang web phải đối mặt. Học cách sửa nó với hướng dẫn này một cách nhanh chóng. ⬇ Bấm vào tweetClick to Tweet

Lỗi thời gian chờ cổng 504 là gì?

Mỗi khi bạn truy cập một trang web trong trình duyệt của mình, trình duyệt sẽ gửi yêu cầu đến máy chủ web nơi trang web được lưu trữ. Máy chủ xử lý yêu cầu và trả lời với các tài nguyên được yêu cầu.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Cách các yêu cầu và phản hồi của HTTP hoạt động.

Phản hồi của máy chủ bao gồm một trong nhiều mã trạng thái HTTP để chỉ ra trạng thái phản hồi trên trình duyệt. Nhưng không phải tất cả các mã trạng thái HTTP này là lỗi. Chẳng hạn, mã trạng thái 200 OK có nghĩa là máy chủ đã xử lý yêu cầu thành công và mọi thứ đều ổn.

Lớp 5xx của mã trạng thái HTTP cho biết có điều gì đó sai với máy chủ, máy chủ nhận thức được và nó không thể thực hiện yêu cầu của máy khách. Do đó, họ còn được gọi là mã trạng thái 5xx Lỗi máy chủ.Server Error 5xx status codes.

Chính thức, năm mã trạng thái được chỉ định theo lớp 5xx (500, 501, 502, 503, 504). Bạn cũng có thể nhận được nhiều mã không chính thức (506, 507, 509, 520, v.v.).

Lực lượng đặc nhiệm kỹ thuật internet (IETF) xác định lỗi thời gian chờ cổng 504 như:

Mã trạng thái 504 (thời gian chờ cổng) chỉ ra rằng máy chủ, trong khi hoạt động như một cổng hoặc proxy, không nhận được phản hồi kịp thời từ máy chủ ngược dòng cần truy cập để hoàn thành yêu cầu.

Để đơn giản hóa hơn nữa, lỗi này xảy ra khi hai máy chủ liên quan đến việc xử lý yêu cầu. Máy chủ đầu tiên (thường là máy chủ chính) hết lần, chờ phản hồi từ máy chủ thứ hai (máy chủ ngược dòng).

Lỗi thời gian chờ cổng 504 biểu hiện dưới nhiều hình thức khác nhau. Dưới đây là một số cách mà nó thường hiển thị:

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Lỗi ‘HTTP 504 trong trình duyệt Chrome.

Lỗi thời gian chờ cổng 504 tương tự như lỗi Cổng xấu 502, cho thấy máy chủ đầu tiên nhận được phản hồi không hợp lệ từ máy chủ thứ hai (máy chủ ngược dòng).

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Mã thời gian chờ của Gateway 504 Gateway trong Chrome Devtools.

Biến thể của lỗi thời gian chờ cổng 504

Trình duyệt hiển thị bất kỳ lỗi thời gian chờ cổng 504 nào bên trong nó, giống như bất kỳ lỗi nào khác. Vì có nhiều hệ điều hành, máy chủ web, trình duyệt và đại lý người dùng, nó có thể hiển thị theo nhiều cách.

Dưới đây là một vài biến thể thông báo lỗi 504 phổ biến mà bạn có thể gặp:

  • Thời gian chờ 504 Cổng
  • 504 Cổng thời gian chờ nginx
  • Thời gian chờ cổng nginx 504
  • Lỗi thời gian chờ cổng
  • Lỗi 504
  • Lỗi HTTP 504
  • Lỗi HTTP 504 - Thời gian chờ cổng
  • HTTP 504
  • 504 lỗi
  • Thời gian chờ cổng (504)
  • Trang này không hoạt động - tên miền mất quá nhiều thời gian để trả lời
  • 504 Cổng thời gian hết thời gian-Máy chủ đã không phản hồi kịp thời
  • Yêu cầu trang đã bị hủy vì mất quá nhiều thời gian để hoàn thành
  • Khách truy cập trang web: Có một vấn đề phục vụ yêu cầu của bạn, vui lòng thử lại sau vài phút.
  • Chủ sở hữu trang web: Có một thời gian chờ cổng. Bạn nên truy cập nhật ký lỗi của bạn để biết thêm thông tin.
  • Một màn hình trắng trống

Tất cả các phản hồi lỗi trên, mặc dù được diễn đạt khác nhau, chỉ vào cùng một lỗi máy chủ thời gian chờ 504.

Các máy chủ và trang web web có thể tùy chỉnh cách họ hiển thị lỗi thời gian chờ 504 cho người dùng. Một số trong số họ có thể rất tuyệt! Nó là một chiến thuật tuyệt vời để dập tắt sự thất vọng của khách truy cập.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Trang lỗi HTTP 504 tùy chỉnh của GitHub.

SEO Tác động của lỗi thời gian chờ cổng 504

Tất cả các lỗi 5xx ngăn một trang web tải, khiến chúng gây bất lợi cho trải nghiệm người dùng. Do đó, các công cụ tìm kiếm như Google rất coi trọng các lỗi này. Nếu lỗi vẫn tồn tại trong một thời gian dài, nó thậm chí có thể dẫn đến việc xử lý trang web từ kết quả công cụ tìm kiếm.

Ví dụ: khi Google Spiders vấp phải lỗi không có sẵn dịch vụ 503, họ sẽ hiểu rằng đó là một vấn đề tạm thời vì nó chủ yếu được sử dụng để kích hoạt chế độ bảo trì trang web. Vì vậy, họ sẽ cố gắng thu thập dữ liệu trang sau.

Một lỗi thời gian chờ 504 cổng không nhất thiết phải tạm thời vì nó có thể là do nhiều lý do. Nếu trang web của bạn bị hỏng chỉ trong vài phút và nếu các con nhện đang cố gắng thu thập dữ liệu nhiều lần mỗi phút, chúng sẽ cố gắng phục vụ trang từ bộ đệm của chúng. & NBSP; Họ thậm chí sẽ nhận thấy nó.

Nhưng nếu trang web của bạn giảm trong hơn 6 giờ trở lên, thì Google sẽ coi lỗi 504 là vấn đề nghiêm trọng trên toàn trang web mà bạn cần khắc phục càng sớm càng tốt. Điều này có thể tác động tiêu cực đến SEO của bạn.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Xem các lỗi thu thập dữ liệu trong bảng điều khiển tìm kiếm của Google

Google Search Console là một trong những công cụ SEO tốt nhất để theo dõi trang web của bạn Lỗi HTTP 5xx.

Nguyên nhân của lỗi thời gian chờ cổng 504

Vì lỗi 504 là do thời gian chờ giữa các máy chủ, vấn đề có thể không phải là với thiết bị của khách hàng hoặc kết nối Internet. Điều đó cũng bao gồm thiết bị và kết nối của bạn.

Lỗi thời gian chờ cổng 504 cho thấy máy chủ web đang chờ quá lâu để phản hồi từ một máy chủ khác và thời gian ra ngoài. Có thể có nhiều lý do cho thời gian chờ này: máy chủ khác không hoạt động đúng, quá tải hoặc xuống.

Máy chủ khác không cần phải luôn luôn là bên ngoài (ví dụ: CDN, cổng API). Nó cũng có thể là một thực thể giống như máy chủ trong máy chủ web chính (ví dụ: máy chủ proxy ngược, máy chủ cơ sở dữ liệu).

Cách sửa lỗi thời gian chờ cổng 504

Không biết chi tiết chính xác về trang web WordPress, chẳng hạn như cấu hình máy chủ của nó, kế hoạch lưu trữ, plugin của bên thứ ba và lưu lượng truy cập mà nó thu hút, bạn có thể thấy thật khó chịu và áp đảo khi sửa lỗi thời gian chờ 504 cổng.

Vì nhiều biến có liên quan, tôi khuyên bạn nên bắt đầu bằng cách khắc phục sự cố phía máy khách, điều này khá hiếm, và sau đó chuyển sang khắc phục các sự cố phía máy chủ. Họ thường là thủ phạm với 504 lỗi.

Thử tải lại trang web

Một trong những điều đầu tiên bạn có thể thử khi gặp lỗi thời gian chờ 504 cổng là chờ vài phút và thử tải lại trang.

Bạn có thể nhấn phím tắt F5 để làm mới/tải lại trang web trong hầu hết các trình duyệt. Để xóa bộ đệm của trình duyệt trang trước khi tải lại, bạn có thể nhấn combo phím tắt Ctrl+F5.F5 keyboard shortcut to refresh/reload the webpage in most browsers. To remove the page’s browser cache before reloading, you can press the CTRL+F5 shortcut combo instead.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Làm mới một trang web trong trình duyệt Chrome

Trong khi bạn ở đó, bạn cũng có thể thử tải trang web trong một trình duyệt khác để loại trừ đó là một vấn đề. Vì hầu hết 504 lỗi là do các máy chủ bị quá tải tạm thời, sử dụng giải pháp này sẽ làm cho trang web của bạn quay lại ngay.

Nếu chờ và tải lại trang web không khắc phục được vấn đề về lỗi 504, bạn có thể kiểm tra xem một trang web có bị hỏng cho tất cả mọi người hay chỉ bạn. Hai công cụ trực tuyến hữu ích để kiểm tra một trang web cho thời gian chết là giảm cho tất cả mọi người hay chỉ là tôi và nó có xuống ngay bây giờ không?

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Kiểm tra Kinsta.com trên xuống cho mọi người hoặc chỉ tôi

Khởi động lại các thiết bị mạng của bạn

Đôi khi, các vấn đề với các thiết bị mạng của bạn như modem hoặc bộ định tuyến có thể dẫn đến lỗi thời gian chờ cổng 504. Khởi động lại các thiết bị này có thể giúp bạn khắc phục sự cố.

Mặc dù bạn có thể tắt tất cả các thiết bị kết nối mạng này theo bất kỳ thứ tự nào, nhưng thứ tự bạn bật lại là rất quan trọng. Thông thường, hãy bật các thiết bị này từ bên ngoài, theo thứ tự kết nối từ nhà cung cấp dịch vụ Internet sang thiết bị khách chính của bạn.

Kiểm tra cài đặt proxy của bạn

Một máy chủ proxy nằm giữa thiết bị của bạn và Internet. Nó chủ yếu được sử dụng để nâng cao quyền riêng tư trực tuyến bằng cách ẩn thông tin cá nhân (ví dụ: vị trí thiết bị) từ các trang web và máy chủ web (ví dụ: sử dụng VPN).

Mặc dù nó hiếm khi các máy chủ proxy gây ra lỗi 504, đôi khi cài đặt máy chủ proxy không chính xác có thể là lý do. Bạn có thể vô hiệu hóa máy chủ proxy và thử tải lại trang web để xem liệu nó có sửa lỗi hay không.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Thay đổi cài đặt ‘proxy trong Windows 10

Hầu hết các khách hàng không sử dụng dịch vụ proxy, vì vậy bạn có thể bỏ qua bước này nếu bạn tự tin rằng bạn không sử dụng bất kỳ máy chủ proxy nào. Tuy nhiên, bạn có thể đã đặt nó mà không cần bạn biết về nó. Tôi đã đề nghị bạn kiểm tra các cài đặt proxy thiết bị và trình duyệt của bạn để loại trừ nguyên nhân này.

Các vấn đề DNS

Lỗi thời gian chờ cổng 504 cũng có thể được gây ra bởi các vấn đề DNS ở phía máy chủ hoặc phía máy khách (hoặc cả hai).

Lý do có thể xảy ra nhất cho sự cố DNS phía máy chủ là FQDN (tên miền đủ điều kiện) không giải quyết địa chỉ IP chính xác hoặc máy chủ DNS không phản hồi. Thông thường, điều này xảy ra khi bạn chỉ di chuyển trang web WordPress của mình đến một máy chủ hoặc máy chủ mới. Do đó, điều quan trọng là phải chờ đợi các hồ sơ DNS DNS của miền để tuyên truyền đầy đủ, có thể mất tới 24 giờ.DNS server not responding. Usually, this occurs when you’ve just migrated your WordPress site to a new server or host. Hence, it’s important to wait for the domain’s DNS records to propagate fully, which can take up to 24 hours.

Bạn có thể sử dụng các công cụ miễn phí như whatsmydns.net DNS Checker hoặc DNSMAP để xem liệu DNS của bạn có lan truyền trên toàn cầu không.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Kiểm tra tuyên truyền DNS cho tên miền của bạn trên whatsmydns.net

Để khắc phục sự cố DNS phía máy khách, bạn có thể thử xóa bộ đệm DNS cục bộ của mình. Nó giống như xóa bộ nhớ cache của trình duyệt, ngoại trừ ở đây, bạn đã xóa bộ đệm DNS từ hệ điều hành.

Nếu bạn sử dụng Windows, bạn có thể xóa bộ đệm DNS bằng cách mở dấu nhắc lệnh và nhập chỉ thị sau:

ipconfig /flushdns
Flushing bộ đệm DNS với dấu nhắc lệnh trong Windows
Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Flushing the DNS Cache with Command Prompt in Windows

Bạn sẽ thấy một bộ đệm bộ nhớ đệm của DNS Resolver thành công. tin nhắn nếu nó hoạt động.

Đối với các phiên bản MacOS mới nhất, bạn có thể mở thiết bị đầu cuối và chạy lệnh sau:

sudo killall -HUP mDNSResponder

Bạn đã giành được bất kỳ thông báo nào trong MacOS khi quá trình kết thúc, nhưng bạn có thể thay đổi điều đó bằng cách nối lại lệnh với thông báo tùy chỉnh của bạn.

sudo killall -HUP mDNSResponder; DNS Cache was cleared successfully

Nếu bạn sử dụng các phiên bản MacOS cũ hơn, lệnh bạn cần nhập khác nhau dựa trên phiên bản macOS mà bạn đang chạy. Để biết thêm chi tiết, bạn có thể tham khảo phần MacOS trong hướng dẫn DNS DNS chuyên sâu.

Nếu bạn sử dụng hệ điều hành Linux, thì quá trình này khá giống với MacOS vì ngay cả Linux cũng sử dụng thiết bị đầu cuối làm giao diện dòng lệnh. Vì có nhiều bản phân phối Linux, lệnh chính xác bạn cần chạy có thể thay đổi từ bản phân phối này sang phân phối khác. Bạn có thể kiểm tra hướng dẫn Kinsta, để biết thêm thông tin.

Cuối cùng, bạn có thể thay đổi các máy chủ DNS phía máy khách của mình tạm thời. Theo mặc định, ISP của bạn tự động gán các máy chủ DNS cho bạn. Nhưng bạn có thể thay đổi những thứ này thành các IPS DNS công cộng tạm thời.

Một số máy chủ DNS đáng tin cậy mà bạn có thể dùng thử là Google Public DNS, Cloudflare 1.1.1.1, Quad9 DNS và Cisco Opendns.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Cài đặt máy chủ DNS tùy chỉnh trong Windows 10

Tắt trang web của bạn tạm thời CDN CDN

Đôi khi, vấn đề cũng có thể là với mạng phân phối nội dung của bạn (CDN). Nếu một máy chủ gốc của trang web có thể truy cập được, hầu hết các CDN sẽ cố gắng phục vụ toàn bộ trang web từ bộ đệm của họ.

Nhưng hầu hết các CDN không cho phép tính năng này theo mặc định vì nó phức tạp với bộ đệm tài sản động trên hầu hết các trang web (ví dụ: bảng điều khiển quản trị viên WordPress).

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Đặt quy tắc trang ‘bộ nhớ cache mọi thứ trong CloudFlare

Một cách đơn giản để khắc phục sự cố này là vô hiệu hóa CDN của bạn tạm thời. Ví dụ: nếu bạn sử dụng plugin WordPress CDN miễn phí để liên kết tài sản trang web của bạn với URL CDN, thì bạn có thể hủy kích hoạt plugin và kiểm tra tải lại trang web của mình.

Điều tương tự cũng xảy ra khi sử dụng bất kỳ plugin nào khác mà bạn có thể sử dụng để kết nối với CDN của mình (ví dụ: WP Rocket, Breeze, W3 Total Cache).

Nếu bạn có thể truy cập vào bảng điều khiển quản trị viên trang web của bạn, bạn có thể vô hiệu hóa plugin qua SFTP bằng cách đổi tên tên thư mục plugin plugin.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Tắt tất cả các plugin qua SFTP bằng cách đổi tên thư mục plugins

CDN như Cloudflare hoặc Sucuri, cung cấp các dịch vụ proxy đầy đủ, có thêm tường lửa giữa máy chủ cạnh và máy chủ gốc của bạn. Do đó, bạn có thể gặp lỗi HTTP 5xx thường xuyên hơn trong khi sử dụng chúng. Hầu hết trong số chúng là lỗi bộ đệm 5xx được trả về bởi máy chủ gốc của bạn, do đó, nó dễ dàng khắc phục chúng.

Kế hoạch miễn phí của CloudFlare, có xu hướng tạo ra lỗi 5xx. Thật không may, vì nó là một dịch vụ proxy đầy đủ, không có cách nào nhanh chóng để vô hiệu hóa nó. Nhưng trước khi bạn đổ lỗi cho CloudFlare cho nó, hãy biết rằng CloudFlare hiển thị hai biến thể của lỗi thời gian chờ cổng 504.

Thời gian chờ 504 Cổng tại CloudFlare (Biến thể 1)

CloudFlare sẽ hiển thị cho bạn màn hình lỗi thời gian chờ cổng 504 tùy chỉnh khi máy chủ gốc của trang web của bạn phản hồi với phản hồi HTTP 504 tiêu chuẩn.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Màn hình Lỗi tùy chỉnh 504 của CloudFlare

Ở đây, vấn đề nằm ở máy chủ web của bạn chứ không phải CloudFlare. Bạn có thể thử sửa nó với các giải pháp khác được đề cập dưới đây hoặc liên hệ với nhà cung cấp dịch vụ lưu trữ của bạn để được trợ giúp về kỹ thuật.

Thời gian chờ 504 Cổng tại CloudFlare (Biến thể 2)

Nếu CloudFlare gây ra lỗi thời gian chờ 504, màn hình lỗi sẽ đề cập đến Cloud CloudFlare, hiện là tên máy chủ tiêu chuẩn cho tất cả các tài sản của CloudFlare. Thông thường, màn hình lỗi sẽ xuất hiện như dưới đây:

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Màn hình lỗi cho thời gian chờ cổng 504 do Cloudflare gây ra

Vì bản thân CloudFlare không phản hồi, bạn sẽ không thấy bất kỳ màn hình lỗi mang nhãn hiệu đám mây nào ở đây.

Nhiều khả năng, CloudFlare đã nhận thức được vấn đề và đang khắc phục sửa chữa. Bạn có thể xác nhận điều này bằng cách kiểm tra trang web trạng thái hệ thống CloudFlare. Ngoài ra, bạn có thể liên lạc với hỗ trợ CloudFlare để có độ phân giải nhanh hơn.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Kiểm tra trạng thái hệ thống CloudFlare tại CloudFlarestatus.com

Thời gian chờ 504 Cổng tại Cloudflare do tải lên lớn

Kích thước tải lên của bạn lên trang web của bạn cũng có thể là một lý do cho thời gian chờ máy chủ. CloudFlare giới hạn kích thước tệp tải lên (mỗi yêu cầu bài HTTP) chỉ 100 MB trên cả gói miễn phí và Pro.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Cloudflare từ ‘Giới hạn kích thước tải lên tối đa cho các kế hoạch khác nhau

Vấn đề có thể ở cuối máy chủ của bạn hoặc với CloudFlare. Bạn có thể tìm ra nguyên nhân chính xác bằng cách bỏ qua CloudFlare với tệp máy chủ DNS của bạn và thử lại tải lên của bạn.

Nếu bạn sử dụng CloudFlare với WordPress, tôi khuyên bạn nên sử dụng plugin miễn phí của họ và loại trừ các URL quan trọng khỏi bộ đệm (chẳng hạn như bảng điều khiển quản trị viên WordPress). Bạn có thể tham khảo bài đăng chi tiết của Kinsta về cách định cấu hình cài đặt CloudFlare cho WordPress.

Đọc đề xuất: Cách thiết lập APO CloudFlare cho WordPress.

Sự cố máy chủ (kiểm tra với máy chủ của bạn)

Các vấn đề về máy chủ là một trong những lý do phổ biến nhất để đối mặt với lỗi thời gian chờ 504 cổng. Vì hầu hết các trang web WordPress được lưu trữ trên các webserver nginx hoặc Apache, Nginx hoặc Apache đang chờ phản hồi từ một cái gì đó và hết thời gian.

Bạn muốn biết làm thế nào chúng ta tăng lưu lượng truy cập trên 1000%?

Tham gia với hơn 20.000 người khác nhận được bản tin hàng tuần của chúng tôi với các mẹo nội bộ WordPress!

Theo dõi ngay

Nhiều khách hàng đến Kinsta cho chính xác vấn đề này mà họ đang phải đối mặt tại các máy chủ WordPress khác. Cuộc trò chuyện diễn ra như thế này:

Chúng tôi nhận được khoảng 100 nghìn khách truy cập mỗi tháng với hơn 200 nghìn lượt xem. Hiện tại, chúng tôi đang lưu trữ với ____ và chúng tôi gặp phải 504 lỗi liên tục do quá tải máy chủ. Tôi không thích cách ____ xử lý vấn đề, và chúng tôi cũng được thông báo rằng chúng tôi sẽ phải sớm chuyển sang các kế hoạch chuyên dụng của họ, điều mà tôi tin là không cần thiết.

Các trang web giao thông cao và thương mại điện tử dễ bị 504 lỗi vì quá tải máy chủ vì chúng tạo ra nhiều yêu cầu không thể thực hiện được. Tuy nhiên, vấn đề này có thể cắt xén với bất kỳ trang web nào, bao gồm các blog đơn giản. Nhiều máy chủ sẽ yêu cầu bạn nâng cấp lên một kế hoạch cấp cao để khắc phục vấn đề, trong hầu hết các trường hợp là không cần thiết.

Kinsta sử dụng máy chủ được quản lý LXD và các thùng chứa phần mềm LXC được phối hợp cho mỗi trang web. Do đó, mỗi trang web WordPress được đặt trong thùng chứa bị cô lập của riêng mình có quyền truy cập vào tất cả các phần mềm cần thiết để chạy nó (Linux, NGINX, PHP, MySQL). Các tài nguyên là 100% riêng tư và aren được chia sẻ với bất kỳ trang web nào khác, ngay cả các trang web của bạn.

Hầu hết các máy chủ WordPress cung cấp các kế hoạch lưu trữ chung don don có khả năng này. Do đó, một trang web giao thông cao được lưu trữ trên cùng một máy chủ với bạn cũng có thể khiến trang web của bạn cũng có lỗi 504.

Ngoài việc cách ly từng trang web trong container của mình, Kinsta cũng đã thiết kế cơ sở hạ tầng của mình để xử lý hàng ngàn kết nối đồng thời một cách dễ dàng. Kinsta thậm chí còn lưu trữ cơ sở dữ liệu MySQL tại localhost, không phải là một máy chủ từ xa. Điều này có nghĩa là không có độ trễ giữa các máy, dẫn đến các truy vấn nhanh hơn và ít cơ hội thời gian chờ xảy ra.

Nhiều khách hàng di cư đến Kinsta thấy sự giảm lớn về thời gian tải tổng thể.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Hiệu suất tăng 212,5% sau khi chuyển sang C2.

Một máy chủ quá tải không phải là nguyên nhân duy nhất cho thời gian chờ máy chủ. Có thể có nhiều lý do khác cho lỗi 504:

Cơ sở hạ tầng máy chủ chậm

Máy chủ bạn sử dụng để lưu trữ trang web WordPress của mình có thể không có đủ tài nguyên để xử lý tải. Nó giống như chơi một trò chơi điện tử đầy đồ họa hiện đại trên PC hàng thập kỷ.

Máy chủ chỉ treo lên cố gắng phục vụ trang web. Giải pháp duy nhất cho vấn đề này là nâng cấp lên máy chủ với cơ sở hạ tầng tốt hơn. Vì lý do này, ngay cả kế hoạch lưu trữ WordPress cơ bản nhất của Kinsta cũng sẽ xử lý một trang web tĩnh với lưu lượng trung bình.

Cần thêm nhân viên PHP

Công nhân PHP được sử dụng để thực hiện mã trang web WordPress của bạn. Một trang web thương mại điện tử nhận được 50.000 khách truy cập mỗi tháng cần nhiều tài nguyên hơn một blog đơn giản với cùng một lượng lưu lượng truy cập. Nếu tất cả các công nhân PHP của máy chủ đang bận rộn, họ sẽ xây dựng một hàng đợi.

Khi hàng đợi trở nên quá lớn, máy chủ không thể chấp nhận các yêu cầu cũ, điều này có thể khiến máy chủ đưa ra lỗi cổng 504. Bạn có thể hỏi chủ nhà của bạn về việc tăng số lượng nhân viên PHP của bạn. Điều này sẽ cho phép trang web của bạn thực hiện đồng thời nhiều yêu cầu.

Vấn đề tường lửa

Tường lửa máy chủ của bạn có thể có một số lỗi hoặc cấu hình không đúng. Có lẽ, một vài quy tắc của nó ngăn máy chủ thiết lập kết nối đúng cách. Để biết liệu tường lửa của bạn có phải là thủ phạm hay không, bạn có thể kiểm tra nhật ký lỗi máy chủ của bạn.

Vấn đề kết nối mạng

Các sự cố kết nối giữa máy chủ proxy và máy chủ web có thể gây ra sự chậm trễ trong việc đáp ứng các yêu cầu HTTP. Nếu bạn sử dụng bộ cân bằng tải, cũng có thể có sự cố kết nối mạng với nó.

Thời gian chờ HTTP

Thời gian chờ HTTP có thể xảy ra khi kết nối giữa máy chủ web và máy khách được mở quá lâu. Với các trang web WordPress, điều này thường xảy ra khi chạy nhập WordPress. Một cách để giải quyết vấn đề này là chuyển sang kết nối internet nhanh hơn.

Bạn cũng có thể sử dụng một công cụ có hỗ trợ cho WP-CLI để chạy các tập lệnh trực tiếp trên máy chủ, hoàn toàn bỏ qua kết nối HTTP. Chẳng hạn, bạn có thể sử dụng lệnh WP Nhập WP-CLI để chạy plugin nhà nhập WordPress trực tiếp thông qua giao diện dòng lệnh.

Quan trọng: Lỗi thời gian chờ 504 Cổng trông tương tự như 503 lỗi không có sẵn dịch vụ hoặc 502 lỗi Cổng xấu. Nhưng họ rất khác nhau. Nếu bạn gặp phải lỗi 504 tại Kinsta, hãy mở một vé hỗ trợ để khắc phục sự cố của bạn ngay lập tức.504 Gateway Timeout errors look similar to 503 Service Unavailable errors or 502 Bad Gateway errors. But they’re all different. If you’re experiencing a 504 error at Kinsta, open a support ticket to get your issue fixed immediately.

Để theo dõi thời gian chết của trang web của bạn, bạn có thể sử dụng một công cụ như Updown.io. Nó sẽ kiểm tra trạng thái trang web của bạn (hoặc bất kỳ URL nào) theo định kỳ bằng cách gửi yêu cầu HTTP cho nó. Bạn có thể đặt tần số kiểm tra từ 15 giây đến 1 giờ. Nếu trang web của bạn không trả lời chính xác, nó sẽ thông báo cho bạn một email hoặc SMS.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Giám sát trang web của bạn một cách dễ dàng với Updown.io

Bạn sẽ nhận được một số lượng lớn tín dụng miễn phí với mỗi tài khoản của Updown.io, nhưng nếu bạn đang tìm kiếm các lựa chọn thay thế rẻ hơn, bạn có thể kiểm tra WebGazer hoặc UptimerObot. Cả hai công cụ này sẽ giúp bạn theo dõi thời gian hoạt động của trang web của bạn cứ sau 5 phút. Đó là đủ tốt cho hầu hết các chủ sở hữu trang web.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Bảng điều khiển công cụ giám sát trang web của WebGazer

Theo dõi trang web của bạn sẽ cho bạn một ý tưởng về mức độ thường xuyên của nó. Điều này đặc biệt hữu ích nếu bạn sử dụng một nhà cung cấp dịch vụ lưu trữ chung. Hầu hết các máy chủ WordPress được quản lý tự động chăm sóc điều này cho bạn. Do đó, nó luôn luôn khuyên bạn nên đi với họ.

Để có lời giải thích chi tiết, hãy xem bài đăng của Kinsta về tầm quan trọng của việc lưu trữ WordPress được quản lý.

Spam, bot hoặc ddos ​​tấn công

Những kẻ tấn công độc hại có thể mang máy chủ web của bạn đến một con bò bằng cách gửi quá nhiều và/hoặc các yêu cầu thâm dụng tài nguyên. Nếu trang web của bạn bị spam bởi bot hoặc trải qua một cuộc tấn công DDoS, nó có thể áp đảo máy chủ của bạn và dẫn đến lỗi thời gian chờ 504 cho nhiều người dùng chính hãng.

Bạn có thể nhìn vào lưu lượng máy chủ và phân tích của bạn để xem liệu bạn có thể phát hiện ra bất kỳ mẫu bất thường nào trong lưu lượng truy cập trang web không. Nếu bạn sử dụng Kinsta để lưu trữ trang web của mình, bạn có thể xem dữ liệu này một cách dễ dàng bằng cách truy cập bảng điều khiển Mykinsta Analytics.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Bảng điều khiển phân tích Mykinsta

Bắt đầu cuộc điều tra của bạn bằng cách xem xét các IP của khách hàng hàng đầu. Nó sẽ cung cấp cho bạn một ý tưởng về người tạo ra số lượng yêu cầu tối đa và từ đâu. Nếu máy chủ của bạn đột nhiên sử dụng băng thông khổng lồ hoặc thu hút rất nhiều lưu lượng truy cập, thì báo cáo này sẽ trở nên siêu tiện dụng.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Xem máy khách hàng đầu IPS, trong bảng điều khiển Mykinsta

Tiếp theo, bạn có thể kiểm tra báo cáo phân tích bộ đệm. Ở đây, bạn có thể thấy có bao nhiêu yêu cầu bỏ qua hoặc thiếu bộ đệm hoặc được phục vụ từ bộ đệm. Vì lý do hiệu suất và ổn định, bạn muốn lưu trữ càng nhiều yêu cầu càng tốt, nhưng nó không phải lúc nào cũng có thể đạt được điều đó.Cache Analysis report. Here, you can see how many requests are bypassing or missing the cache, or being served from the cache. For performance and stability reasons, you want to cache as many requests as possible, but it’s not always possible to achieve that.

Ví dụ, các trang web WooC Commerce tạo ra nhiều yêu cầu không thể chấp nhận được cho các tính năng như giỏ hàng và quy trình thanh toán.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Màn hình phân tích bộ nhớ cache trong Mykinsta

Cuối cùng, bạn có thể sử dụng một plugin bảo mật WordPress để tăng cường bảo mật trang web của bạn bằng cách phát hiện và chặn lưu lượng/IPS đáng lo ngại. Bạn cũng có thể yêu cầu máy chủ của bạn chặn một số IPS nhất định.

Tùy thuộc vào độ dài và quy mô của cuộc tấn công, đây có thể là một quá trình không bao giờ kết thúc của các IP trong danh sách đen khi nhiều kẻ tấn công thay đổi địa chỉ IPS và proxy của họ sau khi bị chặn.

Lưu ý: Kinsta không cho phép khách hàng của mình cài đặt các plugin bảo mật WordPress vì chúng có thể có ảnh hưởng rất lớn đến hiệu suất của trang web, đặc biệt là khả năng quét của nó. Khi Kinsta sử dụng bộ cân bằng tải với nền tảng Google Cloud, việc chặn IPS sẽ luôn hoạt động như dự định. Kinsta doesn’t allow its clients to install WordPress security plugins as they can have a huge effect on the site’s performance, especially its scanning capabilities. As Kinsta uses load balancers with Google Cloud Platform, blocking IPs wouldn’t always work as intended.

Bạn có thể sử dụng các giải pháp bảo mật chuyên dụng như CloudFlare hoặc Sucuri để bảo vệ các trang web của bạn khỏi các cuộc tấn công và spamps của DDoS. Để biết thêm, bạn có thể xem các bài viết của Kinsta về cách cài đặt CloudFlare trên trang web WordPress của bạn và cách Sucuri giúp ngăn chặn một cuộc tấn công DDoS trong các bản nhạc của nó.

Cơ sở dữ liệu WordPress bị hỏng

Đôi khi, lỗi thời gian chờ cổng 504 có thể là do cơ sở dữ liệu bị hỏng, đặc biệt là trong các trang web WordPress. Thông thường, điều này là do các bảng hoặc tệp cơ sở dữ liệu bị hỏng. Đôi khi, nó cũng có thể được gây ra bởi một vấn đề bảo mật nghiêm trọng như trang web hoặc cơ sở dữ liệu của bạn bị hack.

Sửa chữa cơ sở dữ liệu WordPress bị hỏng phụ thuộc vào vấn đề. Các plugin như WP-DBManager giúp dễ dàng chẩn đoán các vấn đề về cơ sở dữ liệu và sửa chữa chúng. Tôi khuyên bạn nên đọc hướng dẫn chi tiết Kinsta về việc sửa chữa các vấn đề cơ sở dữ liệu WordPress để bắt đầu.

Kiểm tra các plugin và chủ đề trang web của bạn

Trong hầu hết các trường hợp, các plugin của bên thứ ba và chủ đề don don gây ra 504 lỗi. Nhưng có một cơ hội nhỏ là họ có thể gây ra thời gian chờ máy chủ, thường là bằng cách xếp hàng nhiều yêu cầu chưa được tạo ra bởi plugin/chủ đề. Vì điều này liên kết rất nhiều công nhân PHP máy chủ của bạn, nó có thể gây ra 504 lỗi.

Một ví dụ tuyệt vời về vấn đề này là WooC Commerce, một plugin được cài đặt để thêm chức năng thương mại điện tử vào các trang web WordPress.

Cách đơn giản nhất bạn có thể khắc phục sự cố này là vô hiệu hóa tất cả các plugin của bạn. Hãy nhớ rằng, bạn đã thắng bị mất bất kỳ dữ liệu nào nếu bạn chỉ hủy kích hoạt một plugin.

Nếu bạn có thể truy cập bảng điều khiển quản trị viên của mình, bạn có thể truy cập màn hình plugins, chọn hủy kích hoạt từ menu hành động hàng loạt, kiểm tra tất cả các plugin và sau đó nhấn nút Áp dụng. Điều này sẽ vô hiệu hóa tất cả các plugin của bạn.Plugins screen, select Deactivate from the bulk actions menu, checkmark all the plugins, and then hit the Apply button. This will disable all of your plugins.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Hủy kích hoạt tất cả các plugin WordPress thông qua bảng điều khiển WP Admin

Nếu bạn có thể truy cập vào khu vực quản trị viên của mình, bạn có thể vô hiệu hóa các plugin qua SFTP bằng phương thức được mô tả trước đó. Chỉ cần đổi tên tên thư mục plugin chính để vô hiệu hóa tất cả các plugin với số lượng lớn.

Khi bạn đã vô hiệu hóa tất cả các plugin, hãy kiểm tra xem trang web của bạn có tải đúng cách không. Nếu nó hoạt động, bạn phải kích hoạt từng plugin, kiểm tra trang web sau khi bật mọi plugin.

Cuối cùng, đảm bảo rằng các plugin, chủ đề và lõi WordPress của bạn được cập nhật. Ngoài ra, đảm bảo rằng máy chủ của bạn đang chạy phiên bản PHP được đề xuất.

Nếu bạn cảm thấy điều này quá áp đảo, bạn luôn có thể liên hệ với chủ nhà của mình để được giúp đỡ. Kinsta sử dụng Kinsta APM và các kỹ thuật khắc phục sự cố khác để giúp khách hàng thu hẹp plugin, truy vấn hoặc tập lệnh nào có thể gây ra lỗi.

Trong các trường hợp xấu nhất, như truy vấn không hiệu quả hoặc mã xấu trong một plugin/chủ đề, bạn có thể đưa một nhà phát triển WordPress để khắc phục sự cố.

Kiểm tra nhật ký lỗi

Xem nhật ký lỗi có thể rất hữu ích khi khắc phục sự cố và gỡ lỗi 504 lỗi trên trang web WordPress của bạn. Điều này có thể giúp bạn thu hẹp một vấn đề trên trang web của bạn một cách nhanh chóng, đặc biệt là nếu nó xuất phát từ một plugin đòi hỏi trên trang web của bạn.

Nếu bạn là khách hàng của Kinsta, bạn có thể dễ dàng thấy các lỗi trong trình xem nhật ký trong bảng điều khiển Mykinsta của bạn.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Kiểm tra nhật ký lỗi bên trong bảng điều khiển mykinsta

Nếu máy chủ của bạn không có công cụ ghi nhật ký, thì bạn có thể bật chế độ gỡ lỗi WordPress bằng cách thêm mã sau vào tệp wp-config.php của bạn:wp-config.php file:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Hằng số wp_debug cho phép hoặc vô hiệu hóa chế độ gỡ lỗi WordPress. Nó có hai hằng số đồng hành tùy chọn có thể mở rộng các tính năng của nó. Hằng số

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
7 hướng tất cả các lỗi được lưu vào tệp DEBUG.LOG trong thư mục
http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
8. Nếu bạn không thấy tệp này, bạn luôn có thể tạo một.debug.log file within the
http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
8 directory. If you don’t see this file, you can always create one.

Không, hằng số

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
9 có kiểm soát liệu nhật ký gỡ lỗi có hiển thị trên trang HTML hay không. Đặt điều này thành sai sẽ ẩn tất cả các lỗi, nhưng bạn có thể xem lại các lỗi sau, vì bạn cũng đã xác định
http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
7 là đúng.

Quan trọng: Nếu bạn đã bật WP_Debug trong môi trường Kinsta, thì nó sẽ định tuyến tất cả các lỗi đến tệp DEBUG.LOG và không phải là lỗi.log trong bảng điều khiển Mykinsta. If you have WP_DEBUG enabled in the Kinsta environment, it’ll route all errors to the debug.log file and not the error.log in the MyKinsta dashboard.

Bạn cũng có thể tải xuống các tệp nhật ký lỗi WordPress thô qua SFTP. Thông thường, bạn có thể tìm thấy nhật ký lỗi trong thư mục gốc máy chủ của bạn trong một thư mục có tên là nhật ký.

Hướng dẫn php curl 504 gateway timeout - thời gian chờ của cổng php curl 504
Truy cập thư mục nhật ký lỗi WordPress qua SFTP

Người dùng Kinsta cũng có thể kích hoạt chế độ gỡ lỗi WordPress từ bảng điều khiển Mykinsta của họ. Để làm điều đó, điều hướng đến các trang web> Công cụ> Gỡ lỗi WordPress và nhấp vào nút Bật. Điều này sẽ cho phép bạn thấy các lỗi và thông báo PHP mà không cho phép gỡ lỗi chế độ thông qua SSH hoặc SFTP.Sites > Tools > WordPress Debugging and click the Enable button. This will allow you to see PHP errors and notices without enabling debug mode via SSH or SFTP.

Cuối cùng, bạn có thể kiểm tra các tệp nhật ký máy chủ. Tùy thuộc vào máy chủ mà bạn sử dụng để lưu trữ trang web WordPress của mình, chúng thường thấy ở những vị trí này:

  • Apache:
    
    
    1
    
    
    1
  • Nginx:
    
    
    2
    
    
    2

Bạn có thể tham khảo ghi nhật ký tài liệu liên quan của Apache hoặc Nginx để biết thêm thông tin.

Định cấu hình Cài đặt Apache hoặc Nginx đúng cách

Bạn có thể chỉnh sửa các tệp cấu hình máy chủ của mình để tăng giới hạn tài nguyên cho các chỉ thị cụ thể. Điều này có thể giúp bạn giải quyết lỗi thời gian chờ cổng 504.

Đối với webche Webservers

Đầu tiên, thêm mã sau vào httpd.conf của bạn:httpd.conf:

TimeOut 600

Cài đặt này xác định thời gian máy chủ sẽ đợi một số yêu cầu nhất định trước khi đánh dấu nó là sự cố thời gian chờ mạng. Giá trị mặc định của nó là 60 giây (phiên bản Apache 2.4).

Bạn chỉ có thể thêm chỉ thị này vào tệp httpd.conf của bạn, không phải trong tệp .htaccess của bạn. Vì hầu hết các nhà cung cấp dịch vụ lưu trữ được chia sẻ cho phép bạn sửa đổi tệp httpd.conf, bạn có thể thử tăng giá trị của Chỉ thị giới hạn trong tệp .htaccess của bạn.httpd.conf file, not in your .htaccess file. Since most shared hosting providers don’t allow you to modify the httpd.conf file, you can try increasing the value of the LimitRequestBody directive in your .htaccess file instead.

Sau đó thêm dòng sau vào tệp php.ini của bạn:php.ini file:

max_execution_time 300

Giá trị mặc định của chỉ thị PHP Max_execut_time là 30 giây. Tăng nó sẽ cho phép các tập lệnh PHP PHP của bạn chạy lâu hơn.

Đối với webserver nginx

Nếu bạn đang chạy các trang web WordPress của mình trên NGINX + FASTCGI Process Trình quản lý (PHP-FPM) hoặc sử dụng Nginx làm proxy ngược cho Apache, bạn có thể điều chỉnh cài đặt máy chủ để giúp ngăn ngừa lỗi thời gian chờ cổng 504.

504 Lỗi thời gian chờ cổng trên Nginx + FastCGI (PHP-FPM)

Đầu tiên, bạn phải chỉnh sửa tệp cấu hình nhóm PHP-FPM của mình. Bạn có thể tìm thấy nó tại vị trí


3 trong máy chủ nginx của bạn (đường dẫn chính xác có thể thay đổi dựa trên phiên bản PHP). Thay phiên, bạn có thể chạy lệnh sau trong thiết bị đầu cuối của mình để chỉnh sửa tệp pool PHP-FPM:

sudo nano /etc/php/7.2/fpm/pool.d/www.conf

Tiếp theo, đặt chỉ thị sau:

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
0

Sau này, bạn phải chỉnh sửa tệp Php.ini của mình. Bạn có thể định vị nó tại


4. Mở tệp và thêm/thay đổi giá trị cho Chỉ thị

5 thành 300 giây.php.ini file. You can locate it at

4. Open the file and add/change the value for the

5 directive to 300 seconds.

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
1

Cuối cùng, hãy thêm mã sau vào Khối vị trí Tệp Nginx.conf của bạn:nginx.conf file’s location block:

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
2

Tải lại Nginx và PHP-FPM cho các thay đổi có hiệu lực.

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
3

Mã chính xác để tải lại PHP-FPM sẽ thay đổi dựa trên phiên bản PHP được cài đặt trên máy chủ của bạn. Kiểm tra trang web của bạn để xem liệu nó đã khắc phục sự cố.

504 Lỗi thời gian chờ cổng vào Nginx Proxy

Nếu bạn sử dụng Nginx làm máy chủ proxy ngược cho Apache, thì bạn có thể làm cho nó khoan dung hơn đối với thời gian chờ máy chủ bằng cách thêm các chỉ thị sau vào tệp nginx.conf của bạn:nginx.conf file:

http://da***.com:808/set_alarm.cgi?user=***&pwd=***&motion_armed=1"
4

Don Tiết quên tải lại nginx sau khi thực hiện các thay đổi của bạn.


6

Các lỗi HTTP khác như thời gian chờ 504 cổng

Như đã đề cập trước đó trong bài viết, nhiều lỗi HTTP 5xx khác giống như lỗi thời gian chờ của Cổng 504. Nó vì tất cả chúng đều xảy ra ở phía máy chủ. Những lỗi này bao gồm:

  • 500 Lỗi máy chủ nội bộ
  • 501 Lỗi không thực hiện
  • 502 Lỗi cổng xấu
  • 503 Lỗi không khả dụng dịch vụ

Các lỗi HTTP khác gây ra do các vấn đề về phía máy khách, như lỗi không tìm thấy 404, cũng giống như lỗi 504. Bạn có thể tham khảo Hướng dẫn chi tiết và danh sách các mã trạng thái HTTP để biết thêm thông tin.

Khi bạn không biết điều gì đã gây ra lỗi thời gian chờ cổng 504, làm thế nào để bạn sửa nó kịp thời để giữ cho khách truy cập kiếm được không bị nảy lên các trang web của đối thủ cạnh tranh? Tất cả các chi tiết là trong bài viết này. ⬆ Bấm vào tweetClick to Tweet

Bản tóm tắt

Trang web WordPress của bạn có thể bị ảnh hưởng bởi lỗi thời gian chờ cổng 504 vì nhiều lý do. Trong bài viết này, bạn đã học cách khắc phục sự cố tất cả. Thông thường, các lỗi này được gây ra do các vấn đề về phía máy chủ, trong trường hợp đó bạn có thể liên hệ với máy chủ của mình và giải quyết nhanh chóng.

Tuy nhiên, bạn cũng phải hiểu rằng lỗi này có thể là do các plugin của bên thứ ba, chủ đề, dịch vụ, truy vấn cơ sở dữ liệu không hiệu quả hoặc kết hợp hai hoặc nhiều trong số này. Nếu bạn tối đa hóa tài nguyên máy chủ của bạn (ví dụ: nhân viên PHP), thì bạn nên tối ưu hóa trang web của bạn để có hiệu suất.

Nếu bạn vẫn thấy rằng trang web của bạn đang hết thời gian, thì rất có thể bạn cần phải nâng cấp kế hoạch lưu trữ của mình hoặc số lượng nhân viên PHP. Tôi khuyên bạn chỉ nên xem xét tùy chọn này sau khi bạn đã cạn kiệt tất cả các giải pháp khác được mô tả trong bài viết này.

Từ các trang web tĩnh đơn giản đến các trang web thương mại điện tử và thành viên phức tạp, các kế hoạch lưu trữ có thể mở rộng của Kinsta, được thiết kế để phù hợp với tất cả các loại trang web. Để tìm hiểu thêm về lưu trữ đám mây có thể mở rộng của chúng tôi, hãy xem bài viết này!

Chúng ta đã bỏ lỡ bất cứ điều gì? Nếu bạn vẫn cảm thấy khó khăn khi sửa lỗi thời gian chờ cổng 504 trên trang web WordPress của bạn, hãy để lại nhận xét bên dưới.


Tiết kiệm thời gian, chi phí và tối đa hóa hiệu suất trang web với:

  • Trợ giúp ngay lập tức từ các chuyên gia lưu trữ WordPress, 24/7.
  • Tích hợp doanh nghiệp CloudFlare.
  • Khán giả toàn cầu với 35 trung tâm dữ liệu trên toàn thế giới.
  • Tối ưu hóa với giám sát hiệu suất ứng dụng tích hợp của chúng tôi.

Tất cả điều đó và nhiều hơn nữa, trong một kế hoạch không có hợp đồng dài hạn, di cư hỗ trợ và một người được bảo đảm trong 30 ngày. Kiểm tra các kế hoạch của chúng tôi hoặc nói chuyện với bán hàng để tìm kế hoạch phù hợp với bạn.

Làm cách nào để sửa thời gian chờ cổng 504 của tôi?

Cách sửa lỗi thời gian chờ cổng 504..
Làm mới trang. Mẹo này nghe có vẻ đơn giản, nhưng đó là một trong những bản sửa lỗi phổ biến nhất để giải quyết lỗi thời gian chờ cổng 504. ....
Kiểm tra việc sử dụng đặt hàng. ....
Hãy thử một trình duyệt khác. ....
Flush DNS. ....
Kiểm tra với các thiết bị khác nhau. ....
Kiểm tra nhật ký lỗi. ....
Kiểm tra plugin. ....
Kiểm tra CDN ..

Làm cách nào để sửa thời gian chờ cổng PHP?

504 Lỗi thời gian chờ cổng trên NGINX + FASTCGI (PHP-FPM) Mở tệp và thêm/thay đổi giá trị cho Chỉ thị MAX_EXECUTY_TIME thành 300 giây.Tải lại Nginx và PHP-FPM cho các thay đổi có hiệu lực.Mã chính xác để tải lại PHP-FPM sẽ thay đổi dựa trên phiên bản PHP được cài đặt trên máy chủ của bạn.Open the file and add/change the value for the max_execution_time directive to 300 seconds. Reload Nginx and PHP-FPM for the changes to take effect. The exact code to reload PHP-FPM will vary based on the PHP version installed on your server.

Làm cách nào để kiểm tra thời gian chờ cuộn tròn của tôi?

Nói với Curl với -M / - -Max -Time Thời gian tối đa, trong vài giây, bạn cho phép dòng lệnh chi tiêu trước khi Curl thoát với mã lỗi thời gian chờ (28).Khi thời gian đặt đã trôi qua, Curl sẽ thoát ra bất kể điều gì đang xảy ra vào lúc đó, bao gồm cả việc chuyển dữ liệu.Nó thực sự là thời gian tối đa cho phép. the maximum time, in seconds, that you allow the command line to spend before curl exits with a timeout error code (28). When the set time has elapsed, curl will exit no matter what is going on at that moment—including if it is transferring data. It really is the maximum time allowed.

Điều gì gây ra 504 Gateway Time Out?

Mã trạng thái 504 (thời gian chờ cổng) chỉ ra rằng máy chủ trong khi hoạt động như một cổng hoặc proxy, không nhận được phản hồi kịp thời từ máy chủ ngược dòng cần truy cập để hoàn thành yêu cầu.Lỗi có thể là một sự xuất hiện tạm thời do lưu lượng truy cập quá nhiều đối với máy chủ hoặc trang web.