Puncte:0

erori aleatoare Nginx 408 în timpul postării ajax

drapel cn

Folosesc jQuery pentru a posta unele date de formular pe serverul meu Nginx, dar uneori eșuează cu o eroare 408.Când apare eroarea, se pare că scriptul php pentru a procesa datele postate NU este atins deloc, deoarece am pus o funcție de înregistrare în prima linie. Și partea cea mai ciudată este că, cu aceleași date de formular, uneori scenariul funcționează, alteori nu. Nu mi-am putut da seama de ce.

Browser: Microsoft Edge 101.0.1210.32

jQuery:1.12.4, codul de postare a datelor după cum urmează:

$.ajax({
    url: „save.php”,
    dataType: „json”,
    tip: „post”,
    contentType: „aplicație/json”,
    date: JSON.stringify( { "comment": comment,"id":id} ),
    processData: false
});

Jurnal Nginx:

[03/May/2022:15:11:01 +0700] „POST /save.php HTTP/1.1” 408 0 ...

Nginx conf:

client_max_body_size 10M;
client_body_buffer_size 2048k;
client_header_timeout 60s;
client_body_timeout 60s;
keepalive_timeout 60s;
Puncte:0
drapel de

Este posibil să se definească un format de jurnal suplimentar - special pentru depanare. În nginx.conf in sectiune http

http {
  # ... alte linii de configurare

  log_format request_body_log '$remote_addr $remote_user [$time_local] Stare „$request”:$status bytes_sent:$bytes_sent gzip_ratio:$gzip_ratio connection_requests:$connection_requests request_length:$request_length connection-serial-request_time:$agent_request_time:$request_time:$agent_request_time:$ " "$http_referer" request_body:"$request_body"';

  #... 
}

Pentru a-l activa pentru locație:

Locație / {
  #...   
  dacă ($request_method = POST) {
    access_log /var/www/html/logs/nginx_request_body.log request_body_log;
  }
}

Acest lucru oferă în jurnalele o mulțime de informații despre fiecare solicitare http.
P.S. Acest exemplu pentru versiunea destul de veche, poate că versiunea dvs. nginx are diferențe.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.