“خطأ HTTP” وهو خطأ متكرر بين مستخدمي وورد الذين يستخدمون طريقة التحميل الكلاسيكية الصور والوثائق وغيرها من الملفات.
في كل مرة نواجه فيها خطأ SQL أو HTTP، من الجيد التحقق من السجلات من الخادم. يمكنهم تزويدنا بمزيد من المعلومات حول رسالة الخطأ المعروضة في المتصفح.
هنا مثال على خطأ “خطأ HTTP” في المتصفح عند محاولة تحميل ملف بتنسيق PDF:

نفس الخطأ، في سجلات الخادم يبدو الأمر مختلفًا تمامًا. أكثر تفصيلاً مما يقودنا إلى ذلك بسهولة أكبر حل المشكلة. اعتمادًا على تكوين خادم الويب وخدمات HTTP / HTTPS، يمكن أن يكون الملف الذي يحتوي على بيانات الخطأ بالصيغة التالية: error.log، error_log، domain-name.error.log، وما إلى ذلك.
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"
يخبرنا الخطأ أعلاه أن الملف الذي نريد تحميله على الخادم أكبر من الحد الذي يسمح به الخادم لكل جلسة تحميل. يمكن العثور على هذا الحد في ملف تكوين NGINX العام (nginx.conf) أو في ملف تكوين NGINX المخصص للمجال الذي واجهنا فيه هذا القيد.
“خطأ HTTP” يظهر في معظم الأوقات عندما يكون لدينا ملف به أريد ميغابايت البحر أو نفعل التحميل المتزامن لعدة ملفات.
كيف نحل الخطأ “العميل ينوي إرسال جسم كبير جدًا – خطأ HTTP”
أبسط طريقة هي تحرير الملف “nginx.conf” ووضع توجيه لتغيير حد التحميل المسموح به لكل جلسة. في حالتنا، قمنا بتعيين حد 10 ميغابايت لكل نص ملف تحميل.
client_max_body_size 10M;
ستتم إضافة التوجيه أعلاه إلى قسم http (الخادم/الموقع).
نحفظ الملف “nginx.conf” تم تحريره مع “سادسا” أو “نانو”، ثم نقوم باختبار تكوين nginx.
nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
نقوم بإعادة تشغيل خدمة nginx:
service nginx restart
أو
systemctl restart nginx
بعد هذه الخطوات، استأنف عملية التحميل. كل شيء يجب أن يسير دون مشاكل وأخطاء “خطأ HTTP” لتختفي.
يواجه العديد من مستخدمي WordPress الذين لديهم مدونات/مواقع مستضافة على خوادم مع NGINX هذا القيد مؤخرًا. على الأرجح يأتي هذا القيد مع ميزات الأمان الجديدة المقدمة في أحدث إصدار من NGINX.