راهنمای جامع راهاندازی وبسایت روی ویندوز سرور با IIS

برای شروع کار با ویندوز سرور و تبدیل آن به یک وبسرور عملیاتی، ابتدا باید سرویس اصلی میزبانی وب مایکروسافت یعنی IIS را نصب و فعالسازی کنید. در ادامه مراحل انجام این کار و تنظیمات پیشرفته آن را گامبهگام دنبال میکنیم.
نصب و فعالسازی سرویس IIS روی ویندوز سرور
سرویس IIS به صورت پیشفرض پس از نصب ویندوز سرور فعال نیست و باید آن را از طریق بخش مدیریت سرور اضافه کنید.
برای این کار، ابتدا ابزار Server Manager را باز کنید (این ابزار معمولا به صورت خودکار با روشن شدن سرور باز میشود یا میتوانید آن را از طریق منوی Start پیدا کنید). در بالای صفحه سمت راست، روی گزینه Manage کلیک کرده و Add Roles and Features را انتخاب کنید. در مراحل اولیه دکمه Next را بزنید تا به بخش Server Roles برسید. در این لیست، گزینه Web Server (IIS) را پیدا کرده و تیک آن را بزنید. در پنجره باز شده، ابزارهای مدیریتی پیشنهادی را تایید کنید.
بسته به نیاز وبسایت خود، در بخش Role Services (که چند مرحله بعد از Server Roles قرار دارد) میتوانید ماژولهای اضافی مانند توسعه برنامههای تحت وب (Application Development) را برای پشتیبانی از نسخههای مختلف داتنت انتخاب کنید. در نهایت روی Install کلیک کنید و منتظر بمانید تا فرآیند نصب کامل شود. پس از پایان نصب، با وارد کردن آدرس http://localhost در مرورگر سرور، باید صفحه خوشآمدگویی پیشفرض IIS را مشاهده کنید.
پیکربندی و ایجاد وبسایت جدید در پیشخوان IIS
پس از نصب، ابزار Internet Information Services (IIS) Manager را از منوی Tools در بالای صفحه Server Manager یا با جستجوی عبارت inetmgr در منوی Start باز کنید. در منوی درختی سمت چپ، نام سرور خود را باز کرده و روی پوشه Sites راستکلیک کنید و گزینه Add Website را انتخاب کنید.
در پنجره باز شده، باید اطلاعات اصلی وبسایت خود را وارد کنید:
- Site name: یک نام مشخص و متمایز برای وبسایت خود انتخاب کنید.
- Physical path: مسیر پوشهای در هارد دیسک سرور که فایلهای وبسایت شما (مانند فایلهای HTML، PHP یا داتنت) در آن قرار دارد را مشخص کنید. معمولا این مسیر در پوشه
C:\inetpub\wwwrootقرار میگیرد، اما میتوانید پوشه اختصاصی خود را در درایو دیگری بسازید. - Binding: در این بخش نوع پروتکل (HTTP یا HTTPS)، آیپی سرور و پورت اتصال (معمولا ۸۰ برای HTTP) را تعیین کنید. کادر Host name را با دامنه خود پر کنید تا وبسرور درخواستهای ورودی این دامنه را به این پوشه هدایت کند.
تنظیم سطوح دسترسی فایلها و کاربری Application Pool
یکی از نکات فنی که معمولا در راهاندازی وبسایتها فراموش میشود، تنظیم درست دسترسیهای امنیتی پوشه سایت است. هر وبسایت در IIS زیر نظر یک Application Pool اختصاصی اجرا میشود که هویت امنیتی خاص خود را دارد.
برای عملکرد صحیح سایت، باید به پوشه محتوای سایت دسترسی خواندن و نوشتن برای کاربر IIS داده شود. روی پوشه اصلی سایت خود در فایل اکسپلورر ویندوز راستکلیک کرده، گزینه Properties را انتخاب کنید و به صفحه Security بروید. روی دکمه Edit و سپس Add کلیک کنید. عبارت IIS_IUSRS را تایپ کرده و دکمه Check Names را بزنید تا کاربر شناسایی شود. پس از تایید و اضافه شدن این کاربر به لیست، دسترسیهای لازم (مانند Read & Execute، List folder contents و Read) را به آن اعطا کنید تا سایت هنگام بارگذاری فایلها یا اجرای اسکریپتها با خطای عدم دسترسی مواجه نشود.
اتصال دامنه و تنظیمات DNS در ویندوز سرور
پس از راهاندازی فایلهای سایت روی سرور، گام بعدی این است که کاری کنید کاربران با وارد کردن نام دامنه در مرورگر خود، به ویندوز سرور شما متصل شوند. این کار از طریق سرویس DNS انجام میشود.
پیکربندی DNS Server برای هدایت ترافیک به ویندوز سرور
مدیریت DNS به این معناست که نام دامنه متنی شما به آیپی عددی سرور ترجمه شود. اگر مدیریت DNS دامنه را در خود ویندوز سرور انجام میدهید، ابتدا باید نقش DNS Server را از همان مسیر Add Roles and Features در Server Manager نصب کرده باشید.
پس از نصب، برای دسترسی به تنظیمات آن، ابزار Server Manager را باز کنید، از منوی Tools در بالای صفحه روی گزینه DNS کلیک کنید تا پنجره DNS Manager باز شود. در منوی درختی سمت چپ، نام سرور خود را باز کرده و روی پوشه Forward Lookup Zones راستکلیک کنید و گزینه New Zone را انتخاب کنید. مراحل را با انتخاب Primary Zone ادامه دهید و نام دامنه خود (مثلا اختصاصی سایت) را وارد کنید تا زون جدید ساخته شود.
داخل این زون ساخته شده، روی فضای خالی سمت راست راستکلیک کرده و گزینه New Host (A or AAAA) را انتخاب کنید. در کادر Name چیزی وارد نکنید (تا دامنه اصلی تنظیم شود) و در کادر IP Address، آیپی اختصاصی و ثابت (Static IP) ویندوز سرور خود را وارد نمایید و روی Add Host کلیک کنید. برای تنظیم زیردامنه www نیز مجددا راستکلیک کرده، New Alias (CNAME) را انتخاب کنید، در کادر اول عبارت www و در کادر دوم نام دامنه اصلی خود را بنویسید.
تعریف رکوردها و تنظیم نهایی Child Hosts
برای اینکه دامنه شما بتواند از این DNS سرور استفاده کند، باید نامسرورهای اختصاصی خود را تعریف کنید. برای این کار در همان پنجره DNS Manager و داخل زون دامنه خود، دو رکورد A جدید برای نامسرورها (مثلا ns1 و ns2) بسازید و هر کدام را به آیپی سرور متصل کنید.
در نهایت، به پنل کاربری خود در شرکت ثبتکننده دامنه بروید. در بخش تنظیمات کارگزاریها یا NS، این دو نامسرور را به همراه آیپی سرور ثبت کنید که به این کار تنظیم Child Host گفته میشود. پس از ست شدن این نامسرورها، تمام درخواستهای اینترنتی دامنه مستقیم به ویندوز سرور شما ارسال خواهد شد.
بهینهسازی عملکرد و مدیریت وبسرور IIS
یک وبسرور خام ممکن است در ترافیکهای بالا کارایی لازم را نداشته باشد. برای داشتن یک سایت سریع و پایدار، اعمال برخی تنظیمات بهینهسازی روی IIS ضروری است.
فعالسازی قابلیتهای Content Compression
کاهش حجم دادههای ارسالی به مرورگر کاربر، سرعت بارگذاری صفحات را به شدت افزایش میدهد. در IIS دو نوع فشردهسازی وجود دارد:
- Static Content Compression: فشردهسازی فایلهای ثابت مانند کدهای CSS، جاوااسکریپت و تصاویر. این کار بار پردازشی کمی دارد و سرعت انتقال را بالا میبرد.
- Dynamic Content Compression: فشردهسازی خروجیهای پویایی که توسط کدهای سمت سرور تولید میشوند. فعالسازی این بخش پردازش بیشتری از سیپییو میگیرد اما پهنای باند مصرفی را بهینهتر میکند.
برای فعالسازی، ابزار IIS Manager را باز کنید، از منوی درختی سمت چپ روی نام سایت خود کلیک کنید و در صفحه وسط، در بخش IIS، روی آیکون Compression دوبار کلیک کنید. در این بخش میتوانید تیکهای مربوط به هر دو نوع فشردهسازی را فعال کنید.
تنظیمات بازیافت یا Recycling در Application Pool
هر وبسایت برای اجرای کدهای خود حافظه رم مصرف میکند. به مرور زمان ممکن است به دلیل کدهای غیراستاندارد، نشت حافظه (Memory Leak) رخ دهد. IIS برای حل این مشکل از قابلیت Recycling استفاده میکند.
در پنجره IIS Manager، از منوی درختی سمت چپ روی گزینه Application Pools کلیک کنید. در لیست باز شده، پل اختصاصی سایت خود را پیدا کرده، روی آن راستکلیک کنید و گزینه Recycling را انتخاب کنید. در این بخش میتوانید تنظیم کنید که فرآیند کاری سایت در ساعتهای کمترافیک شبانهروز (مثلا ساعت ۴ صبح در بخش Specific time) یا پس از مصرف مقدار مشخصی از حافظه رم (در بخش Private memory usage)، به صورت خودکار بازنشانی شود تا منابع سرور آزاد گردند.
ارتقای امنیت و سختسازی وبسایت در ویندوز سرور
امنیت وبسرور پاشنه آشیل هر کسبوکاری است. ویندوز سرور ابزارهای قدرتمندی برای مقابله با حملات و ایمنسازی ابزار میزبانی در اختیار شما قرار میدهد.
نصب و پیکربندی گواهینامه SSL برای پروتکل HTTPS
امروزه داشتن گواهینامه SSL یک ضرورت غیرقابلانکار است. برای فعالسازی HTTPS روی IIS، ابتدا باید یک فایل گواهینامه معتبر (با پسوند .pfx) تهیه کنید.
در پیشخوان IIS Manager روی نام اصلی سرور در بالاترین قسمت منوی درختی سمت چپ کلیک کنید. در صفحه وسط و در بخش IIS، روی آیکون Server Certificates دوبار کلیک کنید. از منوی Actions در سمت راست صفحه، گزینه Import را انتخاب کرده و فایل گواهینامه خود را بارگذاری و رمز عبور آن را وارد کنید. پس از وارد شدن گواهینامه، به بخش Sites در منوی سمت چپ بروید، روی سایت خود کلیک کرده و از منوی Actions در سمت راست گزینه Bindings را انتخاب کنید. یک Binding جدید با دکمه Add از نوع HTTPS روی پورت ۴۴۳ اضافه کرده و در منوی کشویی پایین، گواهینامه وارد شده را به آن اختصاص دهید.
محدودسازی دسترسیها با بررسی آیپی و ماژولهای امنیتی
برای محافظت از بخشهای حساس سایت (مانند پوشه مدیریت)، میتوانید از قابلیت IP Address and Domain Restrictions در IIS استفاده کنید. برای دسترسی به این ویژگی، در منوی درختی IIS روی پوشه یا بخش مورد نظر از سایت خود کلیک کرده و در صفحه وسط روی آیکون IP Address and Domain Restrictions دوبار کلیک کنید. با استفاده از گزینههای Add Allow Entry یا Add Deny Entry در منوی سمت راست، میتوانید دسترسی به آن مسیر خاص را فقط برای آیپیهای ثابت شرکت یا مدیران سایت مجاز کنید و باقی درخواستها را مسدود سازید.
جمعبندی : راه اندازی وبسایت روی ویندوز با استفاده از ابزار IIS
راهاندازی وبسایت روی ویندوز سرور با استفاده از وبسرور IIS، زیرساختی بسیار قدرتمند، پایدار و انعطافپذیر را بهویژه برای برنامههای مبتنی بر داتنت فراهم میکند. در این فرآیند، اجرای دقیق گامهای نصب، تعیین مسیرهای صحیح فیزیکی و تنظیم دقیق دسترسیهای امنیتی برای کاربر IIS_IUSRS از اهمیت بالایی برخوردار است. علاوه بر این، اتصال صحیح دامنه از طریق ابزار DNS Manager و تعریف رکوردهای ساختاری، پایداری ترافیک ورودی به سرور را تضمین میکند. در نهایت، نباید فراموش کرد که راهاندازی اولیه تنها نیمی از مسیر است؛ حفظ پایداری و امنیت وبسایت در گرو اعمال تنظیمات بهینهسازی نظیر فشردهسازی دادهها، بازنشانی دورهای ابزارهای پردازشی (Recycling) و سختسازی سرور با پروتکل HTTPS است که مدیریت هوشمندانه وبسرور را در بلندمدت تضمین میکند.
سوالات متداول
این خطا معمولا به دو دلیل رخ میدهد: یا فایل شاخص سایت (مانند index.html یا default.aspx) در پوشه اصلی قرار ندارد، یا این فایل در لیست Default Document وبسرور IIS تعریف نشده است. برای حل آن، در IIS Manager روی سایت خود کلیک کرده، وارد بخش Default Document شوید و مطمئن شوید نام فایل اصلی شما در لیست وجود دارد. همچنین امنیت فایل اکسپلورر را بررسی کنید تا کاربر IIS_IUSRS دسترسی خواندن داشته باشد.
ویندوز سرور این امکان را از طریق قابلیت پورتبندی یا تعریف Host Name فراهم میکند. در پنجره Add Website یا بخش Bindings هر سایت، کافی است در کادر Host name، دامنه اختصاصی همان سایت را وارد کنید. با این کار، IIS ترافیک ورودی روی پورت ۸۰ یا ۴۴۳ را بر اساس نام دامنهای که کاربر صدا میزند تفکیک کرده و هر کاربر را به پوشه مربوط به خودش هدایت میکند.
بله، ویندوز سرور به خوبی از PHP پشتیبانی میکند. برای این کار باید ابتدا ماژول CGI را از بخش Web Server Roles نصب کنید. سپس با استفاده از ابزار FastCGI در IIS و دانلود نسخه Non-Thread Safe افزونه PHP، مسیر اجرای فایلهای .php را به این ابزار معرفی کنید تا سایتهای وردپرسی یا لاراملی نیز با سرعت بالا روی ویندوز اجرا شوند.
ابزار IIS به طور اختصاصی توسط مایکروسافت برای سیستمعامل ویندوز توسعه یافته و هماهنگی کاملی با معماری سیستمهای تحت داتنت و دیتابیس SQL Server دارد. در مقابل، وبسرورهایی مثل آپاچی یا انجینایکس معمولا روی توزیعهای لینوکس نصب میشوند و برای معماریهای متنی و منبعباز کارایی بالاتری دارند. انتخاب بین این دو کاملا به زبان برنامهنویسی و زیرساخت فنی وبسایت شما بستگی دارد.
سیستم DNS در سراسر جهان بر پایه کش (Cache) کار میکند. وقتی رکوردی را در DNS Manager ویندوز تغییر میدهید، زمان معینی طول میکشد تا این تغییر در سرورهای ارائهدهنده اینترنت (ISPها) بهروزرسانی شود که به این زمان TTL (Time to Live) میگویند. برای بررسی اعمال تغییرات در خود سرور، میتوانید دستور ipconfig /flushdns را در خط فرمان ویندوز اجرا کنید تا کش محلی پاک شود.































شما میتوانید دیدگاه خود را در مورد این مطلب با ما با اشتراک بگذارید.