HTTP 304 لم يتم التعديل يُعد جزء من برمجة الشبكات التي لا يعرفها مُستخدمي مواقع الويب، فهذه من أكثر ما يواجههم ولا يتمكنون من معرفة السبب وراء حدوثه، لذا سيوضح لكم موقع سوبر بابا المعنى والمقصود من هذا الكود، للحد من المفاهيم الخاطئة التي تدور في أذهان المُستخدمين.
HTTP 304 لم يتم التعديل
يظهر هذا الكود في حالة قيام المُستخدم بالتحديث القسري مثل ctrl + f5 على سبيل المثال، فنجد أن السبب وراء ظهوره هو أن التخزين المؤقت مُمتلئ وغير صالح للتخزين الزائد، فيقوم الجهاز بالطلب من المُستخدم أن يسترجع الملفات مرة أخرى.
فمن الجدير بالذكر أن كود 304 لا يعمل بكفاءة كبيرة، حيث يحتاج إلى استرجاع الملفات التي تتواجد على الجهاز كاملةً، حتى يتمكن من إعادة جزء بسيط منهم تم فقده بسبب امتلاء الذاكرة.
لكن على الرغم من ذلك إلا أن له مميزات عدة، من أهمها أنه قادر على استرجاع جميع الملفات بدون استخدام وحدات بايت كثيرة، فبالتالي يعمل على توفير الكثير من النطاق الترددي للشبكة، وهذا الأمر يُساهم بدوره على التقليل من وقت عرض الصفحة الرئيسية.
طريقة حظر استجابات HTTP 304
في إطار حديثنا حول HTTP 304 لم يتم التعديل، فنجد أن هناك طريقة لإلغاء ظهور هذه الاستجابة، وتتمثل خطواتها فيما يلي:
- في البداية عليك مسح ذاكرة التخزين المؤقت للمتصفح بشكل كامل، ومن الجدير بالذكر أنه يُمكن استخدام الزر الخاص بمسح الذاكرة الذي يتواجد على شريط أدوات Fiddler، وذلك من خلال الأداة Internet Explorer.
- من ثم عليك الضغط CTRL + SHIFT + DELETE في المتصفح الذي يكون مدعوم من جميع المُتصفحات الأخرى التي تستخدمها على الدوام.
- بعد حذف الذاكرة، عليك العودة إلى Fiddler، ومن ثم قم بتحديد القواعد> الأداء> خيار، واضغط على اختيار تعطيل التخزين المؤقت الذي يتواجد في القائمة الظاهرة أمامك بعد إجراء هذه الخطوة.
- ستُلاحظ أن Fiddler سيعمل على حذف مُحتوى الطلبات الشرطية، وستظهر أمامك رؤوس الاستجابة المتعلقة بوقت التخزين المؤقت الخاصة بجميع الاستجابات.
- سيتم إضافة رأس جديدة مُتعلقة بطلب بدون ذاكرة تخزين مؤقت، وهنا سيكون عليك إضافة عنصر خاص بالتحكم في ذاكرة التخزين المؤقت إلى كل استجابة.
- فيما بعد إضافة رؤوس أخرى استجابة بدون ذاكرة تخزين مؤقت، وهكذا ستكون قد منعت المتصفح من تخزين هذه الموارد، فبالتالي لن يسمح لاستجابات HTTP 304 من التحكم في المتصفح.
DNS وإعادة تعيين TCP / IP
استكمالًا لحديثنا حول HTTP 304 لم يتم التعديل، فيرجى العلم أن كِبار المُبرمجين قاموا باختراع طريقة أخرى يُمكن من خلالها منع الاستجابات الخاصة بهذا الكود في حالة إذا كانت هذه المشكلة لا تتعلق بالمتصفحات، باتباع ما يلي:
- في البداية عليك النقر على تشغيل Windows، ومن ثم حدد موجه الأوامر في شريط البحث، حتى يكون مسؤول.
- عليك كتابة الأوامر الموضحة في الصورة بالترتيب الموضح، والضغط على Enter بعد كتابة كلٍ منهم.
- سترى أن الجهاز سيبدأ في الاستجابة إلى التعليمات التي قمت بكتابتها، عندما يُنفذها بأكملها، وعليك التوجه على الفور لإعادة تشغيل النظام مرة أخرى، سترى أن المشكلة قد حُلت.
استخدم عنوان DNS العام لـ Google
من خلال حديثنا حول HTTP 304 لم يتم التعديل فيرجى العلم أنه يوجد طريقة أخرى لحل مشكلة الاستجابة لهذا الكود، وذلك من خلال استخدم عنوان DNS العام لـ GOOGLE والتي تتمثل خطواتها فيما يلي:
- قم في البداية بفتح نافذة التشغيل واكتب الأمر cpl، واضغط بعدها على ENTER.
- من ثم عليك كتابة الأمر Win + R. وستُلاحظ أنه سيظهر أمامك قائمة بها الكثير من الاختيارات اضغط على الخصائص أو Properties.
- بعد ذلك ستظهر أمامك قائمة كبيرة بها الكثير من الاختيارات عليك اختيار منها الإصدار الرابع الخاص ببروتوكول الإنترنت.
- عليك تحويل زر الاختيار لخيارات خادم DNS، مع استخدام قيم لعنوان الخادم، ومن المُفضل أن يكون 8.8.8.8 مع كتابة البديل 8.8.4.4.
- في النهاية عليك النقر على موافق وذلك لحفظ الإعدادات، ومن ثم قم بإعادة تشغيل النظام، فسترى أن المشكلة قد حُلت.
شكل HTTP 304
في صدد حديثنا حول HTTP 304 لم يتم التعديل، فنتطرق إلى نقطة هامة فهناك بعض الأشخاص ممن لا يعرفون شكل الاستجابة الخاصة بـ HTTP 304، خاصةً من لا يمتلكون خبرة في مجال البرمجة، تحديدًا برمجة الشبكات ومواقع الويب، لذا وجب علينا أن نعرض لكم شكلها فيما يلي:
LoadModule cache_module modules/mod_cache.so
<IfModule mod_cache.c>
LoadModule cache_disk_module modules/mod_cache_disk.so
<IfModule mod_cache_disk.c>
CacheRoot “c:/cacheroot”
CacheEnable disk “/”
CacheDirLevels 5
CacheDirLength 3
</IfModule>
# When acting as a proxy, don’t cache the list of security updates
CacheDisable “http://security.update.server/update-list/”
</IfModule>
أصبحت برمجة الشبكات من أكبر المجالات في العالم وأكثرها انتشارًا في مجال التكنولوجيا، وذلك حتى يتم مواكبة التطور السريع والكبير في مجال التكنولوجيا العصرية.