اگر اینکه میخواهید بدانید IIS چیست، به دلیل کنجکاوی شخصی باشد که بسیار خب! اما اگر مسئول مدیریت یک وبسایت بزرگ هستید و کاربران زیادی بهصورت همزمان به صفحات شما درخواست میفرستند، کارهای زیادی با شما داریم. در چنین شرایطی، عملکرد وبسرور شما میتواند تفاوت بزرگی ایجاد کند و به همین دلیل است که میخواهیم وبسرور IIS را معرفی کنیم. چه یک سایت کوچک را مدیریت کنید، چه یک زیرساخت پیچیده و بزرگ؛ IIS به شما اجازه میدهد ، سریع و با امنیت بالا به درخواستهای کاربران پاسخ دهید. پس از آشنایی با IIS و نحوهٔ عملکرد آن، راهنمای گامبهگام نصب و پیکربندی IIS را طی خواهیم کرد. در نهایت یک توصیه برای حرفهایها خواهیم داشت، پس تا انتهای مطلب همراه ما بمانید.
IIS چیست؟
Internet Information Services یا همان IIS که به فارسی معنای خدمات اطلاعات اینترنتی را میدهد، یکی از وبسرورهای ویندوزی مایکروسافت است. قبل از اینکه به بررسی ادامه مقاله بپردازیم خوب است برای آشنایی با وب سرور و انواع آن مقاله وب سرور چیست را بخوانید:
وبسرور کامپیوتری است که فایلهای مربوط به وبسایت (مثلاً فایلهای html، شیتهای CSS، تصاویر و فایلهای جاوا اسکریپت) و حتی نرمافزار وبسرور، روی آن نگهداری میشود.
از این وبسرور برای میزبانی، پیادهسازی و مدیریت برنامههای وب با استفاده از فناوریهایی مانند ASP.NET و PHP استفاده میشود. سادهتر بگوییم: IIS محیطی است که درخواستهای کاربران روی صفحات وب را دریافت کرده و به آنها پاسخ میدهد. حالا این پاسخها ممکن است از جنس HTM، ASP.NET و یا فایلهای استاتیک مثل تصویر و حتی سرویسوب هم باشد.
این وبسرور با باقی محصولات مایکروسافت مثل NET framework سازگاری عالی دارد. بنابراین این نرمافزار در دیباگ، فرآیندهای اشتراکگذاری FTP، بهبود کشینگ و پرفورمنس و… برای توسعهدهندگان ویندوز، عصای دست قدرتمندی خواهد بود.
نحوه کار وب سرور IIS چگونه است؟
تا اینجای کار میدانیم که سرور IIS با دریافت درخواستها از کلاینتهای راه دور و ارائه پاسخ مناسب به آنها کار میکند. اما جنس این پاسخ، میتواند یک صفحه وب، یک فایل، یا نتیجه یک اسکریپت باشد. حالا زمانی که این درخواستها به IIS میرسند، یک مدل مبتنی بر فرآیند درگیر پردازش درخواستهای کلاینتها میشود. مدل مبتنیبر فرآیند اسم سختی بود؟ بسیار خب، بیایید این فرآیند را مرحله به مرحله بررسی کنیم:
۱. دریافت درخواستها:
کلاینتها (مثل مرورگرها) درخواستهای HTTP یا HTTPS را به سرور میفرستند. HTTP.sys، که یک درایور هسته ویندوز است، این درخواستها را دریافت و پردازش اولیه را انجام میدهد. مثل وقتی که شما نامهای را به منشی تحویل میدهید و آن را میخواند.
بیشتر بخوانید: پروتکل HTTPS چیست و چه تفاوتی با HTTP دارد؟
۲. ارسال به Application Pool:
درخواستها به Application Pool مناسب هدایت میشوند که برنامهها را بهطور مجزا اجرا میکند تا سیستم امن و پایدار بماند. درست مثل اینکه یک منشی خوب، تمام نامهها را در پوشههای مجزا از هم بایگانی کند و اگر لیوان چای تصادفا روی یک پوشه بریزد؛ باقی پوشهها و نامهها خشک و تمیز باقی بمانند.
۳. پردازش درخواست:
در این استخر اپلیکیشن، یک Worker Process (فرآیند کاری) درخواستها را پردازش کرده و کدها را اجرا میکند. یعنی منشی خوب، نامهها را جدا کرده و هر نامه را به بخش مربوط به خودش میفرستند و مسئول هر بخش نامهها را میخواند و میداند چه اقدامی باید انجام شود.
۴. ماژولهای IIS:
درخواستها توسط ماژولهای مختلف مانند Authentication (احراز هویت)، Caching (ذخیرهسازی موقت)، و Static Files (فایلهای ثابت) پردازش میشوند. به بیان دیگر، حالا بررسی میشود نامه به درخواست چه سازمانی به بخش رسیده، درخواست به شخص مسئول سپرده و به آن رسیدگی میشود.
۵. ارسال پاسخ:
پس از پردازش، پاسخ از طریق HTTP.sys به کلاینت بازمیگردد. یعنی نتیجهٔ اینکه اقدامات درخواستی در نامه انجام شده یا نشدهاند به همراه اطلاعات ضروری در یک صفحه نامهٔ جدید نوشته شده و به فرستندهٔ اول، تحویل داده میشود.
میبینید که با این معماری ماژولار، هر فرآیندی میتواند به صورت مستقل و بدون تاثیر به سایر فرآیندها به سرعت پردازش شود و خبری از کاربران بیحوصله و ناراضی نخواهد بود.
برای میزبانی وبسایتهایی که با فناوریهای مایکروسافت توسعه یافتهاند، انتخاب هاست مناسب اهمیت زیادی دارد. اگر به دنبال یک سرویس سازگار با ASP.NET و SQL Server هستید، خرید هاست ایران سرور میتواند گزینهای ایدهآل باشد که پایداری، امنیت و عملکرد بهینه را برای سایت شما فراهم کند.
آشنایی با مزایا و معایب وبسرور IIS
هر نرمافزاری از جمله وبسرورها، حتی اگر ساختهٔ مایکروسافت هم باشند؛ مزایا و البته معایبی دارند. بعضی از مزیتهای وبسرور IIS که ممکن است برایتان جالب باشند، عبارتند از:
1. امنیت قدرتمند
IIS با ویژگیهای داخلی تأیید هویت، مجوزدهی و کنترل دسترسی،امنیت برنامههای شما را تقویت میکند. شما میتوانید حسابهای مدیریتی سیستم و برنامهها را بهصورت جداگانه ایجاد کنید و سطوح دسترسیهرکدام را با دقت بیشتری مدیریت کنید. ویژگیهای امنیتی فیلتر کردن درخواستها برای لیست سفید/سیاه کردن ترافیک، مسدودسازی پویا IP، رمزگذاری SSL و TLS، فشردهسازی صفحات وب و کنترلهای امنیتی ویژه FTP در IIS ارائه میشوند.
وب سرور IIS علاوه بر مدیریت درخواستهای کاربران، نیاز به تأمین امنیت ارتباطات دارد. برای این منظور، گواهیهای امنیتی مختلفی مانند SSL و TLS مورد استفاده قرار میگیرند. اما تفاوت ssl و tls در چیست و کدامیک امنیت بیشتری را برای وبسایتهای میزبانیشده روی IIS فراهم میکند؟
برای بالا بردن امنیت وبسایت و فراهم کردن تجربهای خوب برای کاربران، همین امروز به فکر تهیه یک گواهی SSL معتبر باشید.
2. استخرهای برنامه (Application Pools)
یک استخر برنامه میتواند شامل یک یا چند برنامه باشد که توسط یک یا چند فرآیند کاری در IIS مدیریت میشود. هر فرآیند کاری درخواستهای کلاینت را برای یک استخر خاص مدیریت میکند. جداسازی پولها تضمین میکند که اگر برنامهای در یک پول خراب شود، برنامههای دیگر تحت تأثیر قرار نخواهند گرفت.
3. مقیاسپذیری و اطمینان بالای عملکرد
با استفاده از مزرعه وب IIS، میتوانید یک زیرساخت وب مقیاسپذیر و مطمئن پیادهسازی کنید. یعنی میتوانید چندین وبسایت پرترافیک را روی IIS میزبانی کنید و مطمئن باشید که از توازن بار و مسیریابی درخواست برنامه (ARR) برخوردار هستید. منظورمان از توازن بار این است که ترافیک ورودی میان سرورهای مختلف در مزرعه سرور IIS توزیع میشود. ARR هم بهترین سرور محتوا را برای هر درخواست تعیین میکند.
در این مزرعه سرور IIS، میتوانید سرورهایتان را به صورت داینامیک حذف یا اضافه کنید. در نتیجه مقیاسپذیری بالایی را برای سایت یا اپلیکیشن خود در اختیار دارید.
4. جمع فناوریهای مایکروسافت، جمع!
سرور IIS بهعنوان یک محصول مایکروسافت، با سایر فناوریهای مایکروسافت مثل ASP.NET بهطور یکپارچه کار میکند و این یعنی توسعه و مدیریت برنامهها بسیار ساده خواهد بود.
مراحل نصب IIS را بشناسیم!
در آموزش نصب IIS، رایجترین نسخهٔ سرور ویندوز یعنی windows server 2012 را در نظر میگیریم. اما اگر از ویندوز سرور ۲۰۱۶ یا ۲۰۱۹ استفاده میکنید هم جای نگرانی نیست. ممکن است تصویرها کمی جذابتر از آنچه میبینید شده باشند، اما کلیت امر همان است:
مرحله ۱: باز کردن پنجرهٔ Run
برای نصب IIS روی ویندوز سرور، کلیدهای Windows + R را همزمان فشار دهید تا پنجره Run باز شود.
مرحله ۲: باز کردن Server Manager
در کادر اجرا، ServerManager را تایپ کنید و روی OK کلیک کنید. این کار پنجره Programs and Features را در ویندوز سرور 2012 (یا هر نسخهای که استفاده میکنید) باز میکند.
مرحله ۳: افزودن نقشها و ویژگیها
در پنجره جدید باز شده، روی Add roles and features کلیک کنید.
مرحله ۴: ویزارد نصب
بعد از کلیک شما، ویزارد نصب IIS به کمکتان میآید. دعوت را بپذیرید و روی Next کلیک کنید.
مرحله ۵: انتخاب نوع نصب
در این مرحله، گزینه role-based or feature-based installation را انتخاب کرده و روی Next کلیک کنید.
مرحله ۶: انتخاب سرور از مخزن سرورها
حالا روی Select a server from the server pool کلیک کرده، سرور مورد نظر را انتخاب کنید و Next را بزنید.
مرحله ۷: تعیین IIS بهعنوان وبسرور
در بخش Roles، به پایین لیست بروید و بخش Web Server را تیک بزنید و روی Next کلیک کنید.
مرحله ۸: افزودن ویژگیها
روی Add Features کلیک کنید و حتماً گزینه (Install management tool (if available را هم تیک بزنید.
مرحله ۹: ادامه نصب
تنظیمات پیشفرض را تغییر ندهید و روی Next کلیک کنید.
مرحله ۱۰: انتخاب نقشهای وبسرور
نقشهای وبسرور را انتخاب کرده و روی Next کلیک کنید.
مرحله ۱۱: نصب موارد انتخاب شده
در این مرحله کافی است موافقت کنید که به درستی انتخاب کردهاید و آماده نصب هستید. برای این کار روی Install کلیک کنید.
پس از پایان نصب، با کلیک روی دکمهٔ Close پنجره ویزارد را ببندید.
حالا نصب کامل شده و رابط اصلی Internet Information Services نمایش داده میشود.
پوشه IIS شما در مسیر C:\inetpub\wwwroot است و اکنون میتوانید فایلهای وبسایت خود را از طریق IIS روی مرورگر دسترسی داشته باشید.
مراحل پیکربندی وبسرور IIS
بعد از طی کردن مراحل نصب IIS، یک پوشه با نام همین نرمافزار در مسیر C:\inetpub\wwwroot ذخیره میشود که میتوانید فایلهای سایت را در آن پیدا کنید. علاوهبراین، دسترسیهای مدیریت نرمافزار هم برایتان ایجاد میشوند. برای شروع پیکربندی با استفاده از این دسترسیها مراحل زیر را طی کنید:
۱. در منوی ویندوز، Windows Adminstrative Tools را جستجو کنید.
۲. حالا در لیستی که روبهرویتان حاضر میشود، نرمافزار internet information service manager را بیابید و باز کنید:
۳. در سایدبار صفحهای که باز میشود، روی سرور کلیک کنید تا گزینههای بعدی Expand شوند.
۴. حالا با کلیک راست روی Default Website گزینهٔ Manage Website و سپس Advanced Settings را انتخاب کنید.
۵. در تنظیمات پیشرفته با انتخاب Physical Path به سراغ تعیین جایگزین فایل روت بروید.
۶. برای فایل روت، یک فولدر انتخاب کنید و سپس روی دکمه OK کلیک کنید. (در این تصویر ما مسیر C:\website را انتخاب کردهایم.)
۷. با فیچر Default Documents میتوانید فایلهای پیشفرض وبسرور را انتخاب کنید.
۸. بعد از انتخاب فایلهای پیشفرض، میتوانید یک فایل index.html در پوشه روت ایجاد کنید و دسترسی را با مرورگر وب تأیید کنید.
بسیار خب! کار شما با نصب و پیکربندی وبسرور IIS تمام است!
جمع بندی
حالا که میدانید IIS چیست و چطور کار میکند و نصب و پیکربندی آن را هم بلدید، وقت یک نکته کاربردی رسیده است. با ابزاری که در اختیار دارید، میتوانید حسابی روی سرعت و امنیت مانور بدهید. به مواردی مثل لاگ و کشینگ و SSL در طول مقاله اشارهای کردیم. پیشنهاد میکنیم همین حالا ابزارهای پرفورمنس مانیتورینگ سازگاری مثل PerfMon را هم نصب کنید. به این ترتیب همیشه میتوانید عملکرد سرور و هریک از اپلیکیشنها را با دقت بالا زیر نظر بگیرید و بهترین استفاده را از IIS داشته باشید. مثل همیشه اگر سوالی در مسیر برایتان پیش آمد، از ایران سروریها بپرسید و پاسخ بگیرید.
سوالات متداولی که شما میپرسید؟
۱. وب سرور IIS چیست؟
IIS یک وبسرور ویندوزی است که توسط مایکروسافت برای میزبانی و مدیریت برنامههای وب مانند ASP.NET و PHP استفاده میشود.
۲. چطور IIS را نصب کنیم؟
برای نصب IIS، از Server Manager ویندوز سرور استفاده کرده و مراحل Add Roles and Features را مطابق با ویزارد طی کنید.
۳. مزایای IIS چیست؟
IIS امنیت قوی، مقیاسپذیری بالا، و سازگاری با محصولات مایکروسافت مانند NET. را ارائه میکند.
منابع: