Avatar
نویسنده: مدیا روشن
سه‌شنبه 9 آذر 1400
مطالعه: ۲۱ دقیقه ۰ نظر ۸۳۷ بازدید

IIS چیست و چطور کار می کند؟ راهنمای کامل وب سرور IIS

IIS یا Internet Information Services در حقیقت موضوعی است چند وجهی و لایه‌ای که اطلاعات فنی زیادی پیرامون آن وجود دارد. این راهنما با هدف کمک به افراد تازه کار برای یادگیری مفهوم IIS گردآوری شده است. بنابراین اینکه IIS چگونه کار می‌کند و نحوه نصب آن را برای شما شرح خواهیم داد.

آنچه در ادامه خواهید خواند:

IIS چیست؟

به احتمال زیاد در جستجوی ابزارهای مناسب، با عباراتی همچون وب سرور IIS، سرور IIS و سرور IIS آنلاین رو به رو شده‌اید. برای درک IIS ابتدا باید اصول اولیه نحوه عملکرد آن را بدانید.

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

وب سرور IIS برای وب سایت هایی مناسب هست که با زبان‌های برنامه نویسی ASP طراحی شدند؛ در مقابل آن وب سرور Nginx و Apache هم هستند که تحت لینوکس بوده و برای زبان برنامه نویس PHP طراحی شده اند.

وب سرور چیست و چکار می‌کند؟

وب سرور یک نرم افزار کامپیوتری است که درخواست ها را از طریق HTTP، پروتکل شبکه ایجاد شده برای توزیع محتوای وب؛ یا نوع امن آن HTTPS؛ می پذیرد.
وظیفه اصلی یک وب سرور نمایش محتوای وب سایت از طریق ذخیره سازی، پردازش و تحویل صفحات وب به کاربران است. علاوه بر HTTP، وب سرورها همچنین از SMTP (مخفف Simple Mail Transfer Protocol) و FTP (پروتکل انتقال فایل یا File Transfer Protocol) که برای ایمیل، انتقال فایل و ذخیره سازی استفاده می شود، پشتیبانی می کنند.

 

IIS چیست؟

IIS چیست؟

IIS چه کاری انجام می دهد؟

IIS به عنوان یک وب سرور، میزبانی برنامه‌ها و فایل های شما را بر عهده دارد و وقتی دامین شما در یک مرورگر وارد می شود، فایل ها از وب سرور خوانده و پردازش می شوند. در اصل می توانید آن را به عنوان یک واسطه در نظر بگیرید که مسئول پردازش پیام های برنامه از درگاه‌های پیش فرض TCP است. به عنوان مثال، 443، پورت پیشفرض برای ترافیک HTTPS است، در حالی که 80، پورت پیش فرض برای ترافیک HTTP است.

ترافیکی که به سمت وب سرور IIS می رود گاهی به عنوان درخواست وب شناخته می‌شود. طبق تنظیمات پیش فرض، همانطور که در بالا توضیح داده شد، ترافیک از طریق پورت های 443 و 80 وارد شده و سپس این ترافیک ورودی یا درخواست وب، می تواند توسط وب سرور IIS به چند روش پردازش شود.

چگونه IIS درخواست ها را پردازش می کند؟

یک وب سرور معمولی، می تواند از دو مدل پردازش اصلی استفاده کند:

  1. می‌تواند درخواست‌ها را بر اساس مدل تک رشته‌ای پردازش کند.
  2. برای هر درخواست جداگانه، یک رشته جدید ایجاد کند.

سیستم thread-per-request مدلی است که توسط IIS استفاده می شود که اساساً به یک Thread Pool دسترسی پیدا کرده و برای هر درخواستی یک Thread جدید می‌گیرد.

درخواست ها عموماً بر اساس یک درخواست-پاسخ ساده پردازش می‌شوند. به این صورت که مشتری یک درخواست ارسال می‌کند و یک پاسخ برای او ارسال می‌شود. معمولاً ارتباط اینترنتی بین سرویس گیرنده و وب سرور توسط پروتکل HTTP صورت می گیرد.

IIS از موتور پردازش خود و معماری پردازشی با دو لایه یا حالت استفاده می‌کند:

  1. Kernel Mode
  2. User Mode

Kernel Mode چیست؟

زمانی که حالت کرنل در حال استفاده است، کد می‌تواند هر دستوری را اجرا کند و به تجهیزات متصل دسترسی کاملی پیدا کند. این حالت عمدتاً زمانی استفاده می‌شود که یک فرآیند قابل اعتماد و عمدتاً آسیب ناپذیر باشد. هر‌گونه خرابی پیش آمده در حالت هسته می‌تواند آسیب های زیادی را به خود سیستم وارد کند. kernel mode جایی است که HTTP.SYS را پیدا می کنید.

User Mode چیست؟

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

اگر اشتباهی مرتکب شوید، عواقب آن به اندازه‌ی خطا در حالت کرنل ویران کننده نیست. کدهای اجرا شده در حالت کاربر به ‌APIها دستور می‌دهد که با تجهیزات و memory reference ارتباط برقرار کنند که بسیار امن‌تر از حالت kernel است.

عملیات پردازش درخواست ها در IIS

هدف از Kernel Mode استفاده از HTTP.SYS برای پذیرش ریکوئست های کلاینت ورودی و ارجاع آنها به application pool می باشد. این فرآیند زمانی آغاز می‌شود که مشتری یا کاربر نهایی URL وب سایت را وارد می‌کند. این درخواست اساسا درخواست دسترسی به صفحه HTTP.SYS است.

زمانی که application pool درخواست را از HTTP.SYS دریافت کرد، فیلتر ISAPI توسط فرآیند IIS worker یا w3wp.exe لود می‌شود. اگر یک صفحه ASPX باشد، فرآیند worker HttpRuntime.ProcessRequest و گاهی اوقات aspnet_isapi.dll را نیز باز می‌کند.

HttpRuntime مجموعه ای از اشیاء HttpApplication را ایجاد می‌کند که از طریق HTTP ارسال می‌شوند و با ماژول‌های HTTP به طور مداوم تا زمانی که صفحه ASP.NET از HTTP handler  ریکوئست داشته باشد. زمانی که درخواست مسیر HTTP را تکمیل کرد، لود صفحه شروع می‌شود.

نسخه های IIS موجود

چندین نسخه از IIS موجود است، اما نسخه‌های قبل از IIS 6 برای استفاده تجاری گزینه مناسبی نیستند، بنابراین ما فقط در مورد نسخه‌هایی که بعد از آن ارائه شده‌اند صحبت خواهیم کرد.

 

نحوه کار وب سرور IIS

وب سرور IIS

IIS 6

با IIS 6 یا Windows Server 2003 شروع میکنیم که قدیمی‌ترین نسخه‌ای است که به آن اشاره خواهیم کرد. این نسخه پشتیبانی برای IPv6 را اضافه کرد، اما آپدیت بیشتری برای نسخه قبلی وجود نداشت. از نظر IIS، این حداقل مورد نیاز برای عملکرد در یک محیط سازمانی سریع است.

IIS 7

IIS 7 نسخه بعدی از این وب سرور می باشد. این نسخه با ویندوز ویستا سازگار است و اقدامات امنیتی و پشتیبانی را برای فریم ورک دات نت افزایش داده است.

IIS 7.5

IIS 7.5 با پشتیبانی از TLS 1.1 و 1.2 در ویندوز 7 در دسترس است.

IIS 8

IIS 8 یا Windows Web Server 2012 شامل پشتیبانی از SNI است. همچنین دارای یک پیشنهاد پشتیبانی جنرال است که تا سال 2023 در دسترس قرار دارد.

IIS 8.5

IIS 8.5 برای ویندوز 8.1 در دسترس است و دارای قابلیت‌های لاگین اضافی و همچنین ابزار فعال‌سازی سایت داینامیک می باشد.

IIS 10

IIS 10 از HTTP/2 و Windows PowerShell 5.0 پشتیبانی می‌کند.

ویژگی های وب سرور IIS

وب سرور IIS محبوبیت بسیار بالایی دارد و استفاده از آن بسیار گسترش یافته است. این سرور طیف وسیعی از ویژگی‌های مفید ارائه می‌دهد و ابزاری موثر برای بسیاری از مدیران فناوری اطلاعات به شمار می رود. به طور معمول، IIS برای میزبانی وب‌سایت‌ها و برنامه‌های کاربردی با زبان ASP.NET استفاده می‌شود، اگرچه برای استفاده به‌عنوان یک سرور با دسترسی FTP و برای میزبانی سرویس‌های WCF نیز در دسترس است و در صورت گسترش می‌تواند روی پلتفرم‌های دیگر مانند PHP نیز میزبانی کند.

ویژگی های کلیدی IIS

1. Application Pools

در واقع Application Pools بخش مهمی از سیستم سرور IIS را تشکیل می‌دهد. در یک مجموعه برنامه کاربردی می‌تواند هیچ فرآیند و یا تعداد زیادی فرآیند کارگر IIS در حال اجرا داشته باشد. این فرآیندهای کارگر مسئول اجرای نمونه های برنامه هستند.

در IIS، بعضی برنامه‌های کاربردی به طور پیش فرض ایجاد می‌شوند. به عنوان مثال نسخه 2.0 و v4.0 را در نظر بگیرید که احتمالاً در حالت کلاسیک یا یکپارچه هستند. اگر یک Pool یکپارچه باشد، ASP.NET بخشی از خط لوله درخواست IIS است اما اگر کلاسیک باشد، یک خط لوله برای IIS و یک خط لوله جداگانه برای ASP.NET وجود دارد.

به طور کلی، حداقل از زمانی که IIS 8 منتشر شده است، حالت یکپارچه بیشتر مورد استفاده قرار می‌گیرد.

2. احراز هویت

سرور IISدارای گزینه‌های احراز هویت، از جمله Windows auth، Basic و ASP.NETاست. اگر از Windows Active Directory استفاده می‌کنید، Windows auth بسیار مفید است، زیرا این امکان را به شما می‌دهد که به طور خودکار از طریق حساب دامنه خود وارد برنامه های وب شوید.

3. امنیت IIS

IIS دارای ویژگی‌های امنیتی است، مانند:

  • ابزارهای کمکی برای مدیریت گواهی‌های TLS؛
  • اتصال به‌گونه‌ای که SFTP و HTTPS را می‌توان فعال کرد؛
  • امکان فیلتر‌کردن درخواست‌ها برای اینکه بتوانید به‌طور مؤثری ترافیک را در لیست سفید و یا لیست سیاه قرار دهید؛
  • می‌توانید قوانین دسترسی ها و درخواست‌های log را پیاده‌سازی کنید و به مجموعه‌ای از عملیات امنیتی FTP دسترسی یابید؛

4. مدیریت از راه دور

ابزارهای مدیریتی ریموت به IIS اجازه می‌دهند که از طریق CLI یا از طریق PowerShell به راحتی مدیریت شود. شما می توانید اسکریپت را خودتان ایجاد کنید، که برخی از مدیران فناوری اطلاعات برای آن ارزش خاصی قائل هستند چرا که انعطاف پذیری و کنترل نهایی را ارائه می‌دهد.

به طور کلی می توان گفت، IIS وب سروری همه‌کاره و بسیار قابل تنظیم است. اگر آن را گسترش دهید، می‌تواند کابردهای بسیار بیشتری از میزبانی برنامه‌های ASP.NET داشته باشد. با گسترش آن، می توان یک سرور Windows IIS پایدار، انعطاف‌پذیر و موثر ایجاد کرد.

نحوه راه اندازی یک سرور IIS

چه IIS را روی ویندوز 7، 8 یا 10 نصب کنید، فرآیند راه‌اندازی در همگی یکسان است. از آنجایی که IIS یکی از ویژگی‌های ویندوز است، نصب آن نیازی به راه اندازی ندارد.
در ویندوز 10، تنها کافیست به کنترل پنل دسترسی داشته باشید، جایی که می‌توانید ویژگی‌های ویندوز را روشن و خاموش کنید. از طرفی دیگر، می‌توانید در هر زمان روی دکمه استارت Windows کلیک کرده و عبارت Turn win (ابتدای عبارت Turn Windows features on or off) را تایپ کنید تا Turn Windows features on or off را برای شما بیاورد، سپس روی آن کلیک کنید.

پس از کلیک بر روی “Turn Windows features on or off”، کادر محاوره‌ای “Windows features” را باز می‌کنید که به شما این فرصت را می‌دهد تا ویژگی‌های اضافی ویندوز را روشن یا خاموش کنید که شامل:

  • PowerShell 2.0
  • legacy components
  • media features

و سایر موارد می‌شود. از این قسمت، همچنین می‌توانید برخی از ویژگی‌های IIS، مانند سرور FTP، ابزارهای مدیریت وب(web management tools) و سرویس‌های World Wide Web را نیز روشن و خاموش کنید. می‌توانید روی علامت مثبت بروید، در کنار هر ویژگی کلیک کنید تا منوی آبشاری آنها باز شود.

اگر می‌خواهید سرور Windows IIS را فعال کنید، از Server Manager یا PowerShell برای نصب Web Role (IIS) استفاده کنید. تصمیم بگیرید که کدام ابزارها را می‌خواهید نصب کنید و برای شروع نصب، «OK» را فشار دهید. این عملیات ممکن است چند دقیقه زمان ببرد، اما پس از اتمام می‌توانید فوراً کار را شروع کنید. مثلا با اجرای دستور “inetmgr” به IIS GUI دسترسی پیدا کنید. برای انجام سریع اینکار از صفحه اصلی،کافیست فقط “IIS” را در نوار جستجوی ویندوز تایپ کنید.

 

راه اندازی وب سرور IIS

راه اندازی وب سرور IIS

فرایند راه اندازی سرور Windows IIS

فرآیند راه‌اندازی بسیار ساده است و می‌توانید آن را داخل محیط اصلی ویندوز 10 انجام دهید. پس از اتمام راه اندازی IIS، آن را پیکربندی کنیدکه لازم است مراحل زیر را انجام دهید:

  1. به My Computer رفته و روی “Manage” کلیک کنید.
  2. در بخش Computer Management، گزینه “Services and Applications” را انتخاب کنید.
  3. گزینه “Internet Information Services” را انتخاب کنید.
  4. “Web Sites” را انتخاب کنید.
  5. و در نهایت برای راه اندازی نودِ پیش فرض خود، روی «Default Web Site» راست کلیک کنید.

کار با یک سرور IIS

1. درک پورت ها

اکثر سرورها از پورت 80 برای مدیریت ترافیک HTTP استفاده می کنند، اما اگر فکر می کنید پورت دیگری ممکن است برای نیازهای شما مطلوبتر باشد، می‌توانید پورت را تغییر دهید. تغییر پورتی که ترافیک HTTP شما از آن گذر می کند، آسان است.

برای اینکار IIS Manager را باز کنید و روی وب‌سایت خود کلیک راست کنید و سپس روی «Properties» کلیک کنید. باکس Properties Dialog Box دارای یک فیلد پورت TCP خواهد بود. می توانید آن را به پورت مورد نظر خود تغییر دهید. البته، به خاطر داشته باشید که وقتی شماره پورت را تغییر می‌دهید، باید شماره پورت جدید خود را در کنار نام دامنه وارد کنید. به عنوان مثال، برای “نام دامنه: 80” شما باید “80” را با شماره پورت جدید جایگزین کنید.

اگر مایلید این کار را در ویندوز 8 یا ویندوز 8.1 انجام دهید، روند کمی متفاوت است. ابتدا باید به IIS Manager دسترسی داشته باشید و “Default Web Site” را از سمت چپ انتخاب کنید. سپس روی “Bindings” در سمت راست کلیک کرده، “HTTP” را هایلایت کنید و روی “Edit” کلیک کنید.

حالا می‌توانید پورت جدید خود را در قسمت “Port” وارد کنید‌. هنگامی که کار به اتمام رسید، گزینه “OK” را انتخاب کنید و کادر را ببندید و به سمت چپ صفحه بازگردید تا نودِ سرور مناسب را انتخاب کنید. روی «Restart Server» کلیک کنید، اکنون آماده برای شروع به کار با وب سرور خود هستید!

2. دسترسی به فایل‌های Log

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

به طور معمول، دسترسی به فایل‌های log ساده است. کافیست به کنترل پنل بروید، سپس به “Administrative Tools” رفته و IIS را اجرا کنید. سپس باید وب سایت خود را در سمت چپ مشاهده کنید. آن را انتخاب کرده و روی نماد ورود کلیک کنید. یک dialog box باز می‌شود که “Directory” نام دارد.”Browse” را انتخاب کنید تا جستجوی فایل‌های log شروع شود.

اگر از IIS 6 استفاده می‌کنید، این روند اندکی متفاوت است و تا زمانی که IIS را اجرا نکنید، قسمت اول یکسان می‌ماند. در این مرحله روی وب سایت خود راست کلیک کرده و «Properties» را انتخاب کنید. تب “Website” و سپس قسمت “Active Log Format” را پیدا کنیدو سپس روی “Properties” کلیک کنید . فهرست فایل لاگ باید در پایین dialog box نمایش داده شود.

3. ایجاد دایرکتوری‌های مجازی

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

 

IIS چیست؟

IIS چیست؟

استفاده از SSL

هر کسب‌وکاری برای حفظ بقا بایستی همیشه در نظر داشته باشد که اقدامات امنیتی اش در برابر تهدیدات چگونه عمل می‌کند. یکی از این تهدیدات دسترسی غیرمجاز است. می‌توان از لایه سوکت‌های امن (SSL) برای محافظت از داده‌های خود در برابر دسترسی غیرمجاز با رمزگذاری داده‌ها استفاده کرد. این عمل سبب می‌شود که از دسترسی اشخاص و نهادهای خارجی به اطلاعات جلوگیری شود، زیرا برای انجام این کار آن ها به مجوز نیاز دارند.

مراحل اجرای گواهی SSL

قبل از استفاده از SSL باید گواهینامه سرور را روی سخت افزار سرور خود نصب کنید. برای انجام اینکار، مطمئن شوید که Windows Server 2003 نصب شده است و سپس IIS را نصب و پیکربندی کنید. همچنین بایستی Microsoft Certificate Services را نصب کنید که امکان ایجاد گواهی برای احراز هویت را فراهم کند. پس از انجام این کار، به Internet Explorer و سپس Microsoft Certificate Services از طریق http://MyCA/certsrv بروید و روی درخواست گواهی کلیک کنید. گزینه Advanced Request را انتخاب کنید و سپس می‌توانید از طریق یک فرم درخواست گواهی ارسال کنید. پس از انجام این کارها روی Next کیک کرده و نام دامنه را اضافه کنید.

سپس در بخش “Intended Purpose” یا “Type of Certificate Needed”، گزینه “Server Authentication Certificate”  و یکی از موارد زیر را انتخاب کنید :

  • Microsoft Base Cryptographic Provider نسخه 1.0
  • Microsoft Enhanced Cryptographic Provider
  • Microsoft RSA/SChannel Cryptographic Provider

سپس “Use Local Machine” را انتخاب کنید و مطمئن شوید که کادر “Enable Strong Private Key Protection” علامتی نخورده است.

زمانی که روی “Submit” کلیک کردید، گواهی فوراً نصب می‌شود. اگر این اتفاق نیفتد، باید منتظر بمانید تا مدیر مرجع صدور گواهینامه(certification authority administrator) آن را مدیریت کند.

همچنین می توانید گواهی را به یک وب سایت نسبت دهید. اینکار را با باز کردن IIS Manager و کلیک بر روی “Local Computer” و سپس پوشه “Web Sites” انجام دهید. سایتی را که می خواهید گواهینامه را در آن اعمال کنید، انتخاب کرده و روی “Properties” کلیک راست کرده و روی “Directory Security” کلیک کنید. در بخش «Secure Communications» باید «Server Certificate» را ببینید. روی آن کلیک کنید و Web Server Certificate Wizard را باز کنید، سپس «Assign an existing Certificate» را انتخاب کنید. فرآیند Certificate Wizard را تمام کرده و به صفحه Properties بروید و روی “Directory Security” کلیک کنید. از اینجا می توانید گواهی را مشاهده کنید.

 

IIS چیست؟

آموزش IIS

درک برنامه‌های کاربردی

بیایید نگاه دقیق‌تری به application pool بیندازیم، زیرا بخش کلیدی IIS هستند.

اضافه کردن یک Application Pool

به قسمت «Actions» در سمت راست IIS Manager بروید و روی «Add application pool» کلیک کنید تا یک dialog box ظاهر شود. از طرف دیگر، برای دسترسی سریع‌تر به دیالوگ «Add application pool»، روی «Application Pools» در پنجره Connections کلیک راست کنید. از این قسمت می توانید نام، نسخه دات نت، حالت managed pipeline و اینکه آیا می خواهید application pool فورا شروع شود یا خیر را مشخص کنید.

کاربران مجازی(Virtual Users)

IIS برای هر Pool application یک کاربر مجازی ایجاد می‌کند. به‌طور پیش‌فرض، worker processes به‌عنوان کاربر مجازی برنامه‌های کاربردی اجرا می‌شوند، اگرچه در صورت لزوم می‌توانند به‌عنوان کاربر خاص دیگر نیز اجرا شوند. کاربران مجازی دارای فولدرهای مرتبط با آنها هستند. این فولدرها معمولاً فولدرهای استانداردی همانند Desktop ،Music ، public و … هستند. به یاد داشته باشید که اگر یک مجموعه برنامه را حذف کنید، فولدرهای کاربر همچنان وجود خواهند داشت.

بازیافت Application Pool

هر 29 ساعت، Application Poolها به صورت خودکار recycle می‌شوند. همچنین هر زمانی که فایل پیکربندی تغییر کند نیز ریسایکل می‌شود. با این حال، می‌توانید تعداد دفعات بازیافت Application Pools را تنظیم کنید. فرآیند recycle حافظه مصرف شده توسط برنامه‌های در حال اجرا در pool را آزاد کرده و راه عالی و مناسبی برای جلوگیری از اشغال حافظه سرور شما می باشد.

اما چه چیزی حافظه را مصرف می کند؟ متغیرهای استاتیک، Propertyهای استاتیک، آیتم های موجود در Cache، ارجاع شی به شی و … از جمله موارد مصرف کننده حافظه می باشند. اگر می‌خواهید نحوه و زمان اجرای فرآیند بازیافت را تغییر دهید، به «Edit Application Pool Recycling Settings» بروید.

از این قسمت می‌توانید “Regular time intervals (in minutes)” و “Fixed number of requests” را علامت بزنید. همچنین می‌توانید با علامت زدن کادر و وارد کردن ساعت معینی در فیلد، زمان‌های خاصی را برای اینکار تعیین کنید. تنظیمات ریسایکل همچنین به شما امکان می دهد استفاده از حافظه مجازی و استفاده از حافظه خصوصی که مبتنی بر حافظه می باشند را تعیین کنید.

علاوه بر این ها، می‌توانید تنظیمات نحوه log انداختن eventهای ریسایکل را نیز تغییر دهید. با توجه به مشخصات فنی، مقادیر event log زمانی ایجاد می‌شوند که یک application pool ریسایکل می‌شود. شما می‌توانید تعریف کنید که کدام eventها نیازمند به ایجاد لاگ هستند و در بخش “Configurable Recycling Events”، می‌توانید کادرهای زیر را علامت بزنید یا علامتش را بردارید:

  • Regular time intervals(فواصل زمانی منظم)
  • Virtual memory usage(استفاده از حافظه مجازی)
  • Number of requests(تعداد درخواست ها)
  • Scheduled time(s)(زمان های برنامه ریزی شده)
  • Private memory usage(استفاده از حافظه خصوصی)

در پایین نیز، “Runtime Recycling Events” را مشاهده می کنید که در آن نیز می توانید موارد زیر را علامت بزنید یا علامتش را بردارید:

  • On-demand(بر اساس تقاضا)
  • Configuration changes(تغییرات پیکربندی)
  • Unhealthy (SAP)

اگر به تنظیمات پیشرفته(advanced settings) دسترسی دارید، می‌توانید کارهای بیشتری انجام دهید. به عنوان مثال، هر زمان که پروسه recycle آغاز شود، یک پروسه جدید شروع می‌شود. این پروسه جدید، یک PID جدید خواهد داشت، اما در صورت تمایل می‌توانید از طریق تنظیمات پیشرفته آن را تغییر دهید.

 

IIS چیست؟

IIS چیست؟

IIS در مقابل آپاچی

اگر میزبان وب‌سایت‌های مختلفی باشید، احتمالاً از Apache یا IIS استفاده می‌کنید. این دو وب سرور در مقایسه با سایر رقبای خود بیشترین کاربرد را دارند و در مورد اینکه کدام یک گزینه بهتری است، اختلافات زیادی وجود دارد. اما مهم این است که تفاوت‌های بین IIS و Apache را درک کنید و دیدگاهی بی طرفانه در مورد مزایای آنها داشته باشید.

سرور آپاچی

آپاچی به عنوان سرور HTTP Apache شناخته می‌شود. این سرور open source است و توسط بنیاد نرم افزار آپاچی ایجاد شده است. بنابراین مانند بسیاری از برنامه‌های کاربردی open source، به صورت رایگان توزیع شده و توسط کاربران قابل ویرایش است. مشارکت‌های مداوم کاربر و امکان ویرایش بدست آنها به این معنی است که برنامه دائماً در حال پیشرفت است، که یکی از دلایل محبوبیت آن می باشد. در نتیجه مشکلات آن به راحتی حل میشوند و به روز رسانی‌های مکرر انجام می‌شود.

از مزیت بزرگ آپاچی این است که می‌توانید آن را روی هر سیستم عاملی اصلی اجرا کنید. اغلب با لینوکس استفاده می شود و با زبان اسکریپت PHP و پایگاه داده MySQL ترکیب می شود تا چیزی که معمولاً به عنوان LAMP شناخته می شود را ایجاد کند و این یک راهکار جامع برای وب سرور می باشد.

آپاچی یک ابزار همه‌کاره است. از رابط‌های زبان رایج از جمله PHP، Tcl، Perl و Python پشتیبانی می‌کند و همچنین دارای طیف وسیعی از ماژول های احراز هویت مانند Mod_auth ، Mod_access ، Mod_auth_digest و Mod_digest است. همچنین شامل موارد زیر است:

  • Support for SSL and Transport Layer Security (mod_ssl)
  • A proxy module (mod_proxy)
  • Custom log files (mod_log_config)
  • A URL rewrite (mod_rewrite)
  • Support for filtering (mod_include and mod_ext_filter)
  • Virtual hosting support
  • Webpage compression, to minimize size over HTTP

علیرغم ویژگی‌های چشمگیر، مشکلاتی در آپاچی وجود دارد. اصلی ترین مشکل آپاچی ارزش گذاری کمی به گونه غالب بر ارزشِ کیفی است؛ به این معنا که تعداد زیادی ویژگی در آپاچی وجود دارند که عمدتاً استفاده نمی‌شوند. تخمین زده می شود که از هر ده کاربر آپاچی 9 نفر فقط از 10 درصد از برنامه‌های کاربردی آپاچی به طور منظم استفاده می‌کنند و اغلب شکایت‌هایی وجود دارد که آپاچی یک برنامه سریع نیست.

سرور IIS

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

از سال 2010، مایکروسافت IIS شاهد پیشرفت‌های بزرگی بوده است که منجر به افزایش پیوسته سهم بازار آن شده است و از 21 درصد در سال 2010 به 32 درصد در سال 2014 رشد داشته است. این رشد 11 درصدی تنها در چهار سال است و قطعا این دلیلی بر قابل اعتماد بودن IIS است. در حالی که سهم بازار آپاچی در حال کاهش است و در همین دوره، آپاچی با کاهش 17 درصدی سهم بازار مواجه شده است.

بین سال‌های 2010 و 2014، مایکروسافت پیشرفت‌های قابل‌توجهی در امنیت IIS انجام داد. مانند Apache، IIS از اکستنشن های وب اکسترنال برای اجرای برنامه های کاربردی خاص استفاده می‌کند. این اکستنشن ها موارد زیر را شامل می شوند:

  • Application request routing
  • Media services
  • URL rewriting
  • FTP publishing

این ویژگی ها از طریق افزونه ها در نسخه 7.5 IIS پیاده سازی شدند.

 

IIS چیست؟

وب سرور IIS

جمع بندی

در این مقاله آموزش ویندوز از سری مقالات آموزش سیستم عامل آموختیم، اگرچه وب سرور IIS از نظر سیستم عامل انعطاف‌پذیری کمتری ارائه می‌دهد، اما مزایای قابل توجهی از پشتیبانی و منابع مبتنی بر ویندوز دارد که خواه ناخواه آن را به گزینه برتری تبدیل می کند. در هر صورت اگر به دنبال وب سروری قابل اعتماد و جامع هستید پیشنهاد می کنیم IIS را گزینه انتخابی خود قرار دهید.

از دیگر دلایل محبوبیت IIS این است که از محصولات مایکروسافت مانند فریم ورک دات نت و برنامه نویسی ASPX پشتیبانی می‌کند. برای افرادی که سایت‌هایشان به دات نت یا ASPX وابسته است، احتمالاً IIS انتخاب مناسبتری است.

سوالات متداول

1. IIS چیست و چگونه کار می کند؟

Internet Information Services (IIS) یک وب سرور انعطاف پذیر و همه منظوره از مایکروسافت است که روی سیستم عامل های ویندوز برای ارائه صفحات یا فایل های HTML اجرا می شود.

2. هدف IIS چیست؟

IIS اطلاعاتی را در مورد مکان فایل‌های محتوا، هویت‌های امنیتی که به آن فایل‌ها دسترسی دارند، نحوه تفکیک فایل‌های محتوا به برنامه‌ها و همچنین آدرس‌های اینترنتی که به آن برنامه‌ها نگاشت می‌شوند را حفظ می‌کند.

3. آیا IIS بهتر از آپاچی است؟

طبق برخی آزمایشات، IIS سریع تر از Apache است، زمان پاسخگویی بهتری دارد و می تواند درخواست های بیشتری را در هر ثانیه انجام دهد.

4. چگونه به سرور IIS متصل شوم؟

  1. IIS Manager را باز کنید.
  2. در قسمت Connectionsگزینه Create New Connection را در toolbar باز کنید.
  3. روی Connect to an Application کلیک کنید تا Connect to Application Wizard باز شود.
  4. در صفحه Specify Application Connection Details روی Next کلیک کنید.

5. تفاوت بین HTTP و IIS چیست؟

IIS یا Internet Information Services پکیجی نرم‌افزاری است که توسط مایکروسافت توسعه داده شده است تا سیستم عامل ویندوز خود را برای میزبانی سرویس‌های اینترنتی ارائه دهد. IIS در جهان دومین سرور پرکاربرد HTTP  است. IIS از مایکروسافت است و فقط روی سیستم عامل مایکروسافت ویندوز اجرا می شود.

مطالب این مطلب نیز پیشنهاد می‌شود

با خدمات ابری پارس پک آشنا شوید

اولین ارائه‌دهنده خدمات رایانش ابری در ایران هستیم

سرور اختصاصی ایران

یک سرور با منابع کاملا اختصاصی در برتریرن مراکز داده داخلی.

سرور مجازی

یک ابزار مدیریتی بسیار کاربردی، با دسترسی‌های بیشتر از یک‌هاست ابری.

خرید هاست وردپرس

سرویس قوی و پایدار که برای نصب و راه‌اندازی سیستم مدیریت محتوای وردپرس بهینه شده است.

خرید هاست

تنها برای آن میزان از منابع سخت‌افزاری که نیاز دارید هزینه می‌پردازید و دیگر نیازی به پرداخت هزینه‌های غیر موجه، در ابتدای فعالیت وب سایت خود، نخواهید داشت.

خرید سرور ابری

با ابرسرورها می‌توانید سرور با سیستم‌عامل دلخواه خود را در چند دقیقه انتخاب و نصب نموده و آزادانه منابع سرور خود را کاهش و افزایش دهید.

خرید سرور اختصاصی

تمام منابع سرور در اختیار شماست و به راحتی می‌توانید تغییرات مدنظرتان را اعمال کنید. امنیت، سرعت و پایداری بالا برای میزبانی پروژه‌های بزرگ.