ما هو
في كل مرة يحمّل فيها متصفح صفحتك، يرسل خادمك الصفحة نفسها بالإضافة إلى قائمة قصيرة من التعليمات التي لا يراها الزائر في أي مكان — تُسمى هذه "الرؤوس" (headers). توجد بعض الرؤوس المحددة لغرض الأمان فقط: تخبر المتصفح بأشياء مثل "لا تحاول تخمين أنواع الملفات بنفسك" أو "لا تسمح لموقع آخر بتضمين صفحتي داخل إطار غير مرئي". لا تغيّر هذه الرؤوس مظهر موقعك على الإطلاق — فهي غير مرئية تمامًا للزائر، وتعمل بهدوء في الخلفية.
لماذا يهم
بدونها، تعود المتصفحات إلى سلوك افتراضي أقدم وأكثر تساهلاً تعتمد عليه بعض الهجمات تحديدًا — مثل خداع المتصفح لتشغيل ملف كشيء آخر غير ما هو عليه، أو تضمين صفحة تسجيل الدخول الخاصة بك بشكل غير مرئي داخل موقع آخر لسرقة المعلومات المكتوبة فيها. قد لا تؤدي رؤوس الأمان المفقودة بالضرورة إلى كسر شيء مرئي اليوم، لكنها من أول الأشياء التي سيتحقق منها زائر مهتم بالأمان، أو شريك تجاري محتمل يجري فحصًا أساسيًا، أو أداة فحص آلية — و"لا شيء من هذا مُهيأ" يُقرأ كموقع لم يُنهِ أحد إعداده بعد.
كيفية الإصلاح
- حدد كيفية استضافة موقعك: استضافة ثابتة مثل Netlify أو Vercel أو Cloudflare Pages؛ أو استضافة ويب تقليدية بلوحة cPanel؛ أو خادمك الخاص.
- على Netlify أو Cloudflare Pages: أضف ملف نص عادي باسم
_headersإلى مجلد النشر الخاص بموقعك مع أسطر مثلX-Content-Type-Options: nosniff— تطبّق كلتا المنصتين ذلك تلقائيًا، دون الحاجة لكتابة كود. - على Vercel: أضف ملف
vercel.jsonيحتوي على قسمheadersيسرد نفس أسماء وقيم الرؤوس — توثيق Vercel نفسه يحتوي على مثال جاهز للنسخ واللصق لهذه الحالة بالضبط. - في استضافة تقليدية أو خادمك الخاص، اسأل فريق دعم الاستضافة (أو ابحث عن "[اسم استضافتك] add security headers") — لدى معظمها إجابة قصيرة ومحددة للوحة التحكم الخاصة بها.
- أضف على الأقل
X-Content-Type-Options: nosniffوReferrer-Policy: strict-origin-when-cross-origin— كلاهما آمن وبسيط ومناسب لأي موقع صغير تقريبًا. - أعد تشغيل فحص Launch Readiness بعد ذلك للتأكد من أنه تم اكتشاف الرؤوس الآن.