مرکز آموزش تهران هاست

حرفه ای تر شوید

CGI چیست ؟

cgi

CGI ، سرنام کلمات Common Gateway Interface می باشد.

در پاسخ به  cgi چیست ؟؛ می توان یک مثال ذکر کرد، فرض کنید یک صفحه وب اطلاعاتی را از کاربر دریافت کند. کاربر می تواند با فشار دادن کلید SUBMIT آنها را برای سرویس دهنده ارسال کند.سرویس دهنده HTTP فقط وظیفه دریافت اطلاعات یا ارسال داده ها را بر عهده دارد و کاری در مورد پردازش آنها انجام نمی دهد.

حال این دو سوال مطرح می شود:

1.کدام برنامه بر روی ماشین سرویس دهنده داده های ارسالی از مرورگر را دریافت و پردازش می کند؟

2.مروگر بر اساس چه الگویی  داده ها را ارسال می کند و برنامه پردازش کننده داده ها چگونه آنها را از سرویس دهنده HTTP تحویل می گیرد؟

در واقع وقتی طراح، یک فرم در صفحه وب تعریف می کند باید آدرس تحویل گیرنده و پردازش کننده داده ها را مشخص کند.

برنامه های CGI با نامهای “اسکریپت CGI” و یا “برنامه کاربردی CGI” معرفی می شوند.

CGI استاندارد چگونگی برقراری ارتباط برنامه های جانبی با سرویس دهنده HTTP را مشخص می کند.

پروتکل HTTP به تنهایی قادر به ارسال و دریافت داده ها می باشد و برنامه های CGI در کنار HTTP می توانند یک ارتباط دوسویه با کاربر ایجاد کنند.

در واقع HTTP به عنوان یک پروتکل واسط انتقال داده بین کاربر و برنامه ها است.

زبان هایی که امکان نوشتن CGI را در اختیار قرار می دهند:

1 . C وC++

2.  Perl

3. Tcl

4.VB

5. Apple script و  Shell script UNIX

6. Delphi

برنامه های CGI وردی را از طریق HTTP دریافت کرده و پس از پردازش مجددا آن را تحویل HTTP می دهند.

 الگوهای ارسال اطلاعات برای یک برنامه CGI

-استفاده از الگوی GET

-استفاده از الگوی POST

در الگوی GET داده های جمع آوری شده از صفحه وب آدرس URL ضمیمه آن شده و به سمت سرویس دهنده ارسال می شوند.،این روش زمانی مناسب است که طول داده ارسالی کمتر از 1000 کاراکتر  باشد، بنابراین اکثر برنامه های CGIاز الگوی POST استفاده می کنند.

الگوی POST، این الگو برای ارسال داده های حجیم و یا با حجم نامشخص استفاده می شود.اگر برای فراخوانی داده ها از این الگو استفاده شود، سرویس دهنده HTTP داده ها را از طریق متغییر محیطی به برنامه نمی فرستد، بلکه از طریق “ورودی استاندارد” به برنامه هدایت می شود.

 ====

منابع:

CGI term

What is CGI

2 دیدگاه

  1. احمد

    خیلی ممنون

  2. سکه

    سلام بابت توضیحات خوبتون ممنون . واقعا بهترین گزینه برای فهم این گزینه شما بودید .

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.