الصورة التالية بصيغة jpg لكن الغريب فيها أنها متحركة
شاهدها في رابط
https://lh4.googleuserconte...صادفت من قبل صورة بصيغة png متحركة
بماذا يفسر هذا
الصورة التالية بصيغة jpg لكن الغريب فيها أنها متحركة
شاهدها في رابط
https://lh4.googleuserconte...صادفت من قبل صورة بصيغة png متحركة
بماذا يفسر هذا
المتصفح يعرض الملف على حسب ال Content-Type المحدد من السيرفر.
الرابط الأصلي هو:
وكما يتضح في ال HTTP Response النتيجة هي :
Content-Type: image/gif
Content-Disposition: inline;filename=""
ويبدوا ان المبرمج تجاهل اسم الملف وترك الأمر للمتصفح لكي يحدد كيف يتم حفظ الملف، مثلاً الرابط:
/aa.png
سوف يعرض كل المتصفحات على انه image/gif (بسبب ال content-type) ولو قمت بعمل حفظ في كروم سوف يتم بحفظه بصغية png ، وفي فايرفوكس سوف يتم اضافة هذا الاسم للامتداد الحقيقي ليصبح aa.png.gif وفي انترنت اكسبلور يتم تجاهل الامتداد واخذ الاسم ووضع الامتداد تلقائياً على انه gif.
لا، في الحقيقة هي ليست صورة ذات صيغة JPG . فقط تم استبدال GIF ب JPG، إلا أن المتصفح أذكى من صاحب الخدعة فقد اعتبر الصورة الأصلية ولم يهتم بامتدادها المزيف
يمكنك التأكد من الأمر بنفسك بتحميل وفتح الصور ب ++notepad مثلا، وستظهر لك الصيغة الحقيقية للصورة
لا علاقة للمتصفح
بل تم استعمال ملف httaccess الذي يمكنك بالتحكم في الروابط بكل راحة سواءا تعديل الصيغ او حذفها او التحكم في توجيه الصفحات redirection
او حتى صناعة روابط صديقة لمحركات البحث
المتصفح المسوؤل عن عرض الصور ..
يتم ارسال الصوره الى المتصفح مع ال MIME Type مثلا image/jpeg
المتصفح لايثق بصيغة الصورة/فيديو/صوت او بال MIME بشكل مباشر .. لذالك يوجد عمليات فحص للـ Headers داخل الملف بعد التنزيل لمعرفه نوع الملف الاصلي ليقوم بعرضه بالطريقه الصحيحه ... لذالك قد تجد وصله بصيغة jpg تعرض فيديو !
المتصفح لايثق بصيغة الصورة/فيديو/صوت او بال MIME بشكل مباشر .. لذالك يوجد عمليات فحص للـ Headers داخل الملف بعد التنزيل لمعرفه نوع الملف الاصلي ليقوم بعرضه بالطريقه الصحيحه ... لذالك قد تجد وصله بصيغة jpg تعرض فيديو !
في هذه الحالة لا، لأن X-Content-Type-Options مضبوط، المتصفح من المفترض أن يتجاهل أي شيء آخر ويستخدم الـContent-Type المحدد كما قلتُ في التعليق الآخر، -هذا غير قياسي حتى الآن وقد لا يعمل في كل المتصفحات- لكنه يعمل.
لا، المتصفح فقط سيتعمد على الـContent-Type كما قال @wajdy essam ، ومع كون X-Content-Type-Options يساوى nosniff، من المفترض أن لا يقوم المتصفح بالبحث عن صيغة العرض ويعرضها كما يطلب الخادوم ويثق بها فيرفوكس فقط يخلط الأمور هنا، إذن @megasoft صحيح إذا كان الخادوم Apache فهو يستخدم httaccess لتحديد الصيغة.
أحمد، الأمر ليس كما تعتقد :)
لو تم تغيير الصيغة بناء على httaccess فستتم معرفةصيغتها الحقيقية بمجرد دخول Propereties الخاص بها من المتصفح. وهذا الأمر غير صحيح إذ رغم دخولك لخصائص الصورة، فإن صيغتها تظل .jpg
قمت بتحميلها وظلت تتحرك :D
المتصفح لا يهتم كثيرا بامتداد الملف، بقدر اهتمامه المعطيات الداخلية التي يحتويها. وبالنسبة لمثالنا، الheader يبين أن الصورة GIF
التعليقات