CGI/FastCGI چیست؟
CGI مخفف Common Gateway Interface است که یک پروتکل استاندارد برای وب سرورها جهت اجرای برنامهها بر روی یک سرور است. فعال کردن CGI در محیط IIS بسیار مهم است. در مورد این آموزش، این بدان معنی است که IIS درخواستهای ورودی وب را دریافت میکند و سپس آن را به موتور PHP ارسال میکند. سپس موتور PHP خروجی را که IIS باید به کلاینت نمایش دهد، به آن برمیگرداند.
CGI پس از هر درخواست برنامه را شروع و متوقف میکند. اگر درخواستهای زیادی دریافت کنید، این فرایند از نظر عملکردی بسیار پرهزینه خواهد بود. CGI قادر به کنترل ارتباطات با پایگاه داده یا کش درون حافظه نیست. FastCGI نسخه جدیدتر و ارتقاء یافته CGI است که در اواسط دهه ۹۰ برای رفع این مشکلات معرفی شد. FastCGI میتواند فرایندها را طی چندین درخواست فعال نگه دارد و قادر است ضمن استفاده مجدد از منابع دیگر، جایگزین سریعتر و مدرنتری برای CGI “کلاسیک” باشد.
وقتی CGI را برای IIS فعال میکنید، بهطور پیش فرض شامل FastCGI نیز خواهد بود. سپس IIS به صورت پیش فرض PHP را از طریق FastCGI اجرا میکند.