السلام عليكم
موقع حسوب استطيع الدخول إليه من كل المتصفحات
لكن كيف تعمل هذه المتصفحات هل كل متصفح يخزن اكبر عدد من المواقع في خوادمه
ام يوجد خادم Server لجميع المواقع والمتصفحات تتعامل معه
المتصفح ليس كله برتوكول HTTP @brg @feras.allaou يمكن أصلًا عمل متصفحٍ لا يدعم الوصول إلى شبكة خارجية ببرتوكول HTTP أو غيره، يدخل فقط إلى الملفات المحليّة باستخدام file URI scheme أي مبرمج مبتدئ يعرف كيف يحمّل البيانات من بروتوكل HTTP وهذا أسهل ما يتكون منه المتصفح، يتكون أي متصفح من محركين أساسيين:
محرّك التصميم: عندما نتحدث عن سنين من التطوير نحن نقصد سنين من التطوير حقًا، الآلآف من العمليات، الآلآف من الحشرات حلتْ، معقّد جدًا، يبدأ المحرّك من تحليل HTML وCSS، إلى عرض الواجهة إلى عرض الإطارات إلى تولية زمام الأمور إلى محرّك جافا سكريبت ليغير في الواجهة، وإلى عمليات النظام الأساسية كالمرور فوق الأزرار بالفارة، والكثير الكثير من العمليات لن يحصرها تعليقي أبدًا، من المحركات المشهور جدًا WebKit مستخدم في أغلب التطبيقات/البرامج الهجينة، ومستخدم في الكثير من المتصفحات، كروميوم(ثم بالطبع ابنه كروم)، وسفاري، وOpera ... ويوجد أيضًا محرّك Gecko المستخدم في فيرفوكس.
محرّك JavaScript: هنا الجزّء الأكثر تعقيدًا، عندما تصنع مفسر للغة عمرها سنين من التطوير، والإضافات الكثير من التطويرات في اللغة تطلب التحديث، الكثير من الأخطاء قد تحدث، وفي نفس الوقت تحتاج إلى سرعة رهيبة لترضي المستخدم!، وبالطبع عدم مخالفة مواصفة ECMAScript عند التحدث عن جافا سكريبت!، يحتاج صناعة مفسر بسيط لجافا سكريب إلى أشهر للخروج بتجربة بدائية ببعض مواصفات ES3 والآن يوجد ES6 والبعض يدعم القليل من ES7 التي لم ترَ النور بعد!، وتحتاج إلى سنوات للخروج بمحرك ينافس المحركات الموجودة حاليًا!، من أشهر المحركات V8 سريعٌ جدًا يعتمد على JIT(يُجمع الشيفرات أثناء التفسير ليعطي تجربة سرعة كاللغات منخفضة المستوى) يعمل V8 في الكثير من أنظمة التشغيل الآن، الكثير من التطبيقات/البرامج التي تعتمد على جافا سكريب، NodeJS، وJXCore والكثير من المتصفحات أشهرهم كروميوم، كروم وسفاري وOpera ..، ويوجد أيضًا SpiderMonkey أول محرّك لجافا سكريبت يعمل في فيرفوكس، وJXCore ويوجد منفذ له للعمل مع NodeJS والكثير من التطبيقات والبرامج الأخرى، ويوجد أيضًا ChakraCore من ميكروسوفت أكثر ما يستخدم فيه هو برامج تلك الشركة وبالطبع متصفحات المرقّع، ويستخدم أيضًأ مع JXCore.
يمكنك صناعة متصفح بتجميع محرّك تصميم مع محرّك JavaScript وإضافة بعض المزاية -كل ما ذكرته بالأعلى مفتوح المصدر-، أما صناعة هذا من الصفر صعب، صعبٌ حقًا.
برنامج متطور
يقوم بالاتصال بالسيرفر dns لما تضيف الموقع يتصل بالموقع ويجلب المحتوى منه ويقوم بمعالجة المحتوى ويظهر لك بالشاشه
يعني باختصار للتوضيح
تعرف مكتبة curl داخل php
تقدر تجلب سورس الصفحة وتقدر ترسل بوست وجيت و و و و الى اخره
ويظلع لك الناتج بالاخير كسورس كود
نفس كذا المتصفح لكن بطرق متطوره بحيث يعالج الناتج النهائي ويظهره بالشكل اللي تراه
الفكرة أن هناك ما يُعرف بالخوادم وكل خادم له عنوانه الخاص.
تخيّل البناء الذي تسكن فيه أنت كخادم كبير وكل طابق فيه بيت وحيد كناية عن الموقع الإلكتروني. عندما تكتب العنوان مثلًا Hsoub.com يتم تحويل هذا العنوان إلى آي بي لأن الحاسب لايفهم العبارات ويريد عنوان إلكتروني للوصول إليه وهذه العملية تتم عبر DNS ( فالشبكات في الحواسب تتواصل فيما بينها عن طريق بروتوكولات تستخدم أرقام مثل 127.0.0.2) . وبعد الحصول على الآي بي الخاص بخادم موقع حسوب ( طابقه في البناء ) يتم الذهاب وجلب المحُتوى الذي حدده المُبرمج الذي يرغب بعرضه هو وبداخل المتصفح هناك مُحركات لمعالجة بعض الأكواد القياسية مثل HTML وCSS وجافاسكريبت، وبالتالي يجب أن يقوم المُبرمج بإرسال البيانات التي يرغب بعرضها باستخدام هذه اللغات.
طبعًا حاولت التفسير ببساطة أتمنى أن تكون الفكرة قد وصلت.
التعليقات