“HTTP Error” este o eroare frecventa in randul utilizatorilor de WordPress care folosesc metoda clasica de upload poze, documente si alte fisiere.
De fiecare data cand intalnim o eroare SQL, HTTP, este bine sa verificam log-urile din server. Ele ne pot oferi mai multe informatii despre mesajul de eroare afisat in browser.
Iata un exemplu de eroare “HTTP error” in browser la incercarea de upload a unui fisier .PDF:
Aceeasi eroare, in log-urile de server arata cu totul altfel. Mult mai detaliata si care ne duce mai usor spre rezolvarea problemei. In functie de configuratia serverului web si a serviciilor HTTP / HTTPS, fisierul care contine date despre erori poate fi de forma: error.log, error_log, nume-domeniu.error.log, etc.
2019/06/10 12:58:14 [error] 25084#25084: *22825511 client intended to send too large body: 1143385 bytes, client: 84.XX.XX.XX, server: stealthsettings.com, request: "POST /wp-admin/async-upload.php HTTP/1.1", host: "stealthsettings.com", referrer: "https://stealthsettings.com/wp-admin/post.php?post=19644&action=edit"
Eroarea de mai sus ne spune ca fisierul pe care dorim sa-l urcam pe server este mai mare decat limita admisa de server per sesiune de upload. Aceasta limita se regateste in fisierul general de configurare NGINX (nginx.conf) sau in fisierul de config NGINX personalizat al domeniului pe care am intampinat aceasta limitare.
“HTTP error” apare de cele mai multe ori cand avem un fisier cu volum MB mare sau facem upload simultan la mai multe fisiere.
Cum rezolvam eroarea “client intended to send too large body – HTTP error”
Metoda cea mai simpla este sa editam fisierul “nginx.conf” si sa stabilim o directiva care sa schimbe limita de upload permisa per sesiune. In cazul nostru stabilim limita de 10 MB per corp fisiere upload.
client_max_body_size 10M;
Directiva de mai sus se va adauga in sectiunea http (server/location).
Salvam fisierul “nginx.conf” editat cu “vi” sau “nano”, apoi testam configuratia nginx.
nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Restartam serviciul nginx:
service nginx restart
sau
systemctl restart nginx
Dupa acesti pasi, reluati procesul de upload. Totul ar trebui sa decurga fara probleme si eroarea “HTTP error” sa dispara.
Foarte multi utilizatori de WordPress cu blog-urile / site-urile hostate pe servere cu NGINX se confrunta cu aceasta limitare in ultima perioada. Cel mai probabil aceasta limitare vine la pachet cu noile caracteristici de securitate introduse in cea mai recenta versiune de NGINX.