CGI (اختصار باللغة الإنجليزية لواجهة بوابة مشتركة) ، باللغة البرتغالية ، واجهة باب مدخل شائعة. الواجهة: العنصر الذي يوفر اتصالًا ماديًا أو منطقيًا بين نظامين أو جزء من نظام لا يمكن توصيله مباشرة.
مع الأخذ في الاعتبار السرعة التي تحدث بها الابتكارات ، يمكن اعتبار CGI قديمة ، مع مراعاة إنشاء الكمبيوتر أنه في منتصف العمر.
في عام 1993 ، كتب المنتخب المركز الوطني لتطبيقات الحوسبة الفائقة (NCSA) مواصفات لاتصالات سطر الأوامر التنفيذيين في قائمة البريد الإلكتروني www-voltal. ومع ذلك ، فإن NCSA لا تستضيف المواصفات.
اعتمد المطورين الآخرون المواصفات ، وكانوا معيارًا لخوادم الويب منذ ذلك الحين. بدأت مجموعة برئاسة Ken Coar وظيفة في نوفمبر 1997 للحصول على تعريف NCSA الأكثر تعريفًا رسميًا. نتج عن هذا العمل RFC3875 ، والذي يحدد إصدار CGI 1.1. المذكورة صراحة في RFC هم دافعي الضرائب التاليين:
Rob McCool (مؤلف كتاب NCSA HTTPD Web Server) John Franks (مؤلف خادم الويب GN) Ari Lotonen (CERN HTTPD Web Server Developer) Tony Sanders (Plexus Web Server) George Phillips (صيانة خادم الويب في جامعة كولومبيا البريطانية).
كبديل يمكنك التفكير في:
cd /usr/lib/cgi-bin apt install apache2
a2enmod cgid
a2enmod rewrite
systemctl restart apache2
nano /etc/apache2/mods-available/cgi.load
nano /etc/apache2/mods-enabled/cgi.load
nano /etc/apache2/mods-enabled/mime.conf

بشكل عام ، يحتوي خادم HTTP على دليل (مجلد) ، والذي تم تعيينه كمجموعة من المستندات (الملفات) ، والتي يمكن إرسالها إلى متصفحات الويب المرتبطة بهذا الخادم. يعمل CGI على توسيع هذا النظام ، مما يسمح لمالك خادم الويب بتعيين دليل ضمن مجموعة المستندات التي تحتوي على البرامج النصية القابلة للتنفيذ (أو الملفات الثنائية) بدلاً من الصفحات المحددة ، ويعرف ذلك باسم دليل CGI.
cd /usr/lib/cgi-bin
الهيكل العام للبرامج النصية CGI: • قراءة البيانات وفك تشفيرها (و/أو حقول المعلومات لحزمة HTTP) ؛ • معالجة البيانات (سجل معلومات عن قواعد البيانات ، وإجراء العمليات الحسابية ، واستعادة البيانات) ؛ • إنشاء صفحة ويب مع النتائج المنتجة.
أمثلة على معالجة بيانات تطبيق CGI المقدمة من خلال النماذج ؛
بمثابة واجهة مع قواعد البيانات ، وتحويل معاملة HTML إلى SQL والتنسيق إلى HTML الإجابات التي تم الحصول عليها ، ثم أرسل النتائج إلى العميل ؛
http://54.174.113.206/cgi-bin/index.sh