عمومی

تنظیم چگونگی اجرا شدن فایل ها از طریق ماژول CGI در IIS 7.5

در این بخش با ماژول CGI که کوتاه شده Common Gateway Interface می باشد، آشنا خواهیم شد. همان طور که (احتمالا) می دانید CGI که واسطی (interface) است با وظیفه دریافت اطلاعات و انتقال آن به برنامه (application). به زبان ساده تر به کمک CGI، سرور وب امکان کار با فایل های اجرایی موجود در محتوای وب سایت را پیدا می کند. به این ترتیب که اسکریپت های CGI ( فایلهای اجرایی) پس از پردازش درخواست دریافتی از سمت کاربر ( توسط این ماژول)، پاسخ را به شکل یک فایل با استاندارد html به وب سرور جهت ارایه به کاربر ارایه می کند.به شما پیشنهاد می شود برای کسب اطلاعات در حوزه CGI چیست مقاله تخصصی ما را مطالعه نمایید.

فهرست این مقاله ( با کلیک روی هر عنوان به آن قسمت منتقل می شوید) پنهان

تنظیم چگونگی اجرا شدن فایل ها از طریق ماژول CGI در IIS 7.5

در ماژول CGI همانند دیگر ماژول های موجود در IIS، به تنظیمات پیش فرض دسترسی دارید. باید توجه داشت این ماژول IIS در حالت دسترسی از دور ( remote ) به صورت قفل شده ارایه شده و  صرفا به صورت مستقیم می توان آن را مدیریت کرد.

نحوه دسترسی:

کافی است برای دسترسی به ماژول CGI، آیکون مربوطه را در بخش Home انتخاب کنید.

پیکربندی:

یکی از مهم ترین موارد در دسترس در پیکربندی CGI ، تنظیم time out (زمان مجاز برای اجرای یک برنامه) است که به  طور پیش فرض ۱۵ دقیقه در نظر گرفته می شود. در زیر با دیگر موارد موجود در پیکربندی به اختصار  آشنا می شویم.

ردیف

نام

کاربرد

حالت پیشفرض

۱

createCGIWithNewConsole

تعیین اجرای CGI در کنسول عمومی یا کنسول اختصاصی

غیرفعال

۲

createProcessAsUser

تعیین سرور/کاربر محور بودن پردازشهای CGI

فعال

۳

timeout

تنظیم زمان timeout

۰۰:۱۵:۰۰

علاوه بر واسط گرافیکی موجود در IIS، به کمک کد نویسی نیز می توان پیکربندی را تغییر داد، برای نمونه در کد زیر برنامه در سیستم کاربر اجرا شده و  ۲۰ دقیقه زمان برای انجام فعالیت آن در نظر گرفته شده است:

[pre]

<configuration>

   <system.webServer>

      <cgi createCGIWithNewConsole="true"

         createProcessAsUser="false"

         timeout="00:20:00" />

   </system.webServer>

</configuration>

[/pre]

 نمونه کد اسکریپت جاوا:

[pre]

var adminManager = new

ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');

adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var cgiSection = adminManager.GetAdminSection("system.webServer/cgi", "MACHINE/WEBROOT/APPHOST/Default Web Site");

cgiSection.Properties.Item("createCGIWithNewConsole").Value = true;

cgiSection.Properties.Item("createProcessAsUser").Value = false;

cgiSection.Properties.Item("timeout").Value = "00:20:00";

adminManager.CommitChanges();

[/pre]

اشکان نصیری

مدیر سرور در ایران هاست با +۵ سال سابقه در صنعت میزبانی وب و کارشناسی ارشد MBA

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

نوشته های مشابه

دکمه بازگشت به بالا