phone إتصل الآن

برمجة الخادم : مقدمة إلى برمجة الخادم

 

برمجة الخادم : مقدمة إلى برمجة الخادم

 

تستخدم المواقع الضخمة كود برمجة الخادم؛ ليتم عرض صفحات الموقع بشكل ديناميكي واختيار المعلومات المُراد ظهورها من قواعد البيانات، والتي يتم ترجمتها فيما بعد من قبل لغات البرمجة الخاصة بالموكل (مثل HTML و JavaScript).

 

أفضل ميزة في برمجة خادم الويب الخاص بالموقع، هي إمكانية صُنع محتوى مخصص لكل مستخدم. تستطيع المواقع التفاعلية تسليط الضوء على المحتوى الأقرب لموضوع الموقع بناءاً على تفضيلات وعادات المستخدمين. كما تستطيع تسهيل التعامل عن طريق تخزين مفضلات المستخدمين، ومعلوماتهم الشخصية – على سبيل المثال، استخدام بيانات بطاقة الائتمان؛ لتيسير عمليات الدفع التالية.

 

كما تسمح بالمزيد من التفاعل بين المستخدمين، إرسال الإشعارات، وإرسال رسائل البريد الالكتروني. كل هذه الإمكانيات تسمح بارتباط المستخدمين فيما بينهم بشكل أكبر.

 

ما المقصود ببرمجة مواقع الويب من جانب الخادم؟

 

تتواصل متصفحات الويب مع خوادم الويب عن طريق HTTP. عندما تقوم بالضغط على رابط صفحة ويب، أو بإدخال بيانات في استمارة، أو إجراء بحث، يتم إرسال طلب HTTP من المتصفح إلى الخادم.

 

يتضمن الطلب على الـ URL لتعريف المصدر المطلوب، بطريقة توضح الفعل المطلوب ( إحضار get ، أو حذف delete المصدر)، كما يمكنها أن تتضمن على العوامل المتغيرة للـ URL ،على شكل بيانات POST أو في الـ Cookies المرفقة.

 

تنتظر خوادم الويب رسائل الطلبات من متصفحات الويب، وتقوم بمعالجتها بعد استلامها، وترسل رسالة رد HTTP. تحتوي رسالة الرد على الحالة التي توضح نجاح الطلب أو فشله ( “HTTP/1.1 200 OK” هي رسالة النجاح).

 

كما تحتوي رسالة الرد على المصدر المطلوب ( مستند HTML جديد أو صورة .. إلخ) والتي سيتم عرضها على متصفح الويب.

 

المواقع الثابتة:

 

 

تقوم المواقع الثابتة بإرسال المحتوى الثابت لموقع الويب عند كل طلب. عندما يقوم المستخدم بتصفح المواقع الثابتة، يتم إرسال طلب إحضار GET مخصص لـ URL الموقع).

عندما يصل الطلب إلى الخادم، يقوم الخادم بإرسال الرد مرفق به مستند الموقع مع حالة النجاح ( 200 OK). إذا لم يستطع متصفح الويب إستلام الرد لأي سبب، يقوم بإرسال حالة الخطأ.

 

المواقع التفاعلية ( ديناميكية):

 

في المواقع التفاعلية، يتم تكوين جزء من محتوى الصفحة بشكل ديناميكي فقط عند الحاجة. يتم صُنع مستندات HTML عن طريق أخذ البيانات من قواعد البيانات ووضعها في أماكنها المخصصة في قالب HTML الفارغ (هذه الطريقة هي الأكثر فاعلية، خصوصاً عند تخزين كميات كبيرة من المحتوى، وهي أفضل من طريقة المواقع الثابتة).

 

تقوم المواقع التفاعلية بإرسال معلومات مختلفة على نفس الـ URL ، بناءاً على المعلومات المرسلة من قبل المستخدم ، أو على المفضلات المخزنة، كما تقوم بعمليات أخرى مثل إرسال جزء من الرد (مثل إرسال الإشعارات).

 

لدعم التفاعلية في موقع الويب، لابد من كتابة كود على الخادم. إنشاء هذا الكود يسمى ” البرمجة من جانب الخادم “، وفي بعض الأحيان ( برمجة النهاية الخلفية).

 

في حالة طلب مصدر ثابت، يتم التعامل معها كما لو كانت مواقع ثابتة (إرسال الملف دون أي تغيير) – مثل الصور، وملفات الـ PDF المصنوعة مسبقاً.

 

أما في حالة طلب مصدر تفاعلي، فيقوم الخادم بإرسال الطلب إلى تطبيق الويب، حيث يقوم الأخير بدمج القوالب من ملفات الخادم، مع البيانات من قواعد البيانات، وإنتاج ملف HTML جديد، وإرساله إلى خادم الويب مرة أخرى؛ ليقوم بالرد به على متصفح الويب.

 

هل البرمجة من جانب الخادم تشبه البرمجة من جانب العميل ( المتصفح)؟

 

عند تدقيق النظر على الكود المخصص للبرمجة من جانب الخادم، والبرمجة من جانب العميل. فإننا نجد إختلاف تام بين الحالتين:

 

لكل منهم أغراض واهتمامات مختلفة.

لا يستخدمون نفس لغات البرمجة بشكل عام (فيما عدا JavaScript التي تُستخدم في البرمجة من جانب الخادم والعميل).

كلاهما يعمل في بيئة نظام تشغيل مختلف.

 

الكود الذي يعمل على متصفحات الويب يُسمى كود من جانب الخادم، والذي يركز بشكل أساسي على تحسين مظهر وتصرفات الصفحة المُستلمة. ويتضمن ذلك تنسيق مكونات واجهة المستخدم، صنع الطبقات، التصفح، تأكيد الإستمارات.

 

على النقيض، تقوم برمجة الويب من جانب الخادم بالتركيز على المحتوى الذي سيتم إرساله إلى المتصفح كرد على طلبات HTTP. ويهتم كود البرمجة من جانب الخادم بنوع آخر من العمليات مثل تأكيد البيانات والطلبات المُستلمة، استخدام قواعد البيانات في تخزين واستدعاء البيانات، وإرسال البيانات الصحيحة حسب طلب كل عميل.

 

يُكتب الكود من جانب العميل باستخدام HTML، و CSS، و JavaScript – تعمل هذه اللغات داخل المتصفح ولا يمكنها الوصول إلى نظام التشغيل ( يمكنها فقط الوصول إلى بعض الملفات المحددة).

 

لا يستطيع مطورو الويب التحكم في نوع المتصفح الذي يستخدمه الزائر لإظهار موقع الويب – حيث تدعم متصفحات الويب مستويات غير متناسقة من التوافق مع خواص كود الويب من جانب العميل، وإمكانية التفاعل مع هذا التفاوت بين المتصفحات يُعد من أكبر التحديات.

 

يُكتب الكود من جانب الخادم باستخدام أي عدد من لغات البرمجة – على سبيل المثال PHP , Python, Ruby, و #C. يمتلك الكود من جانب الخادم القدرة على الوصول إلى نظام التشغيل، ويقوم المطورون باختيار أي لغة برمجة (وأي إصدار) على حسب رغباتهم.

 

عند القيام ببرمجة و تصميم موقع الويب من جانب الخادم، ستقوم باستخدام لغات مخصصة للخادم والتي سيتم ترجمتها في المتصفحات بلغات أخرى؛ لجعل المحتوى متوافق مع المتصفح وجاهز للعرض للمستخدم.

 

 

هل شاركت من قبل في تصميم متجر الكتروني أو برمجة حراج ؟

 

شاركنا تجربتك!

WhatsApp chat