وب سرور (Web Server) چیست؟
شاید این سوال برای شما هم به وجود آمده باشد، زمانی که آدرسی را در مرورگر جستجو میکنید، چه پروسهای طی میشود تا اطلاعات مورد نظر شما به نمایش درآید؟ وب سرور (Web Server) که قصد داریم در این مقاله با آن آشنا شویم، در این پروسه نقش مهمی دارد.
اولین وب سرور جهان با نام HTTPD CERN عرضه شد. همچنین در بین سالهای ۱۹۹۱ تا ۱۹۹۵ رشد و پیشرفت چشمگیری در زمینه نرمافزار اتفاق افتاد که البته وب سرورها نیز در این زمینه بیتاثیر نبودند. در همین حال، با توجه به نیاز کاربر و سایت، انواع متنوعی از وب سرورها نیز ارائه شد. در این مطلب قصد داریم به طور کامل توضیح دهیم که وب سرور چیست و چگونه کار میکند؟
فهرست مطالب
مفهوم وب سرور
وب سرور زیرمجموعهای از سرور است که وظیفه اصلی آن، نمایش محتوای سایت مانند متن، عکس، فیلم و حتی اپلیکیشن از طریق ذخیرهسازی و پردازش اطلاعات توسط پروتکل Http است. پروتکل http (انتقال ابرمتن) ارتباط میان سرور و کلاینت را در شبکه کامپیوتری برقرار میکند. Web Server با کمک عواملی چون هاست، دامنه، پروتکلهای امنیتی و … به درخواست کلاینتها پاسخ میدهد. یکی از نکات افزایش سرعت سایت استفاده از یک هاست قوی است. (هاست چیست؟)
منظور از کلاینت، هر نوع شبکه، نرمافزار یا سختافزاری است که درخواست اتصال به سرور را داشته باشد. کامپیوتر، تلفنهمراه، لپتاپ و همچنین مرورگرها از رایجترین نوع کلاینتها هستند.
بررسی وب سرور از نظر سختافزاری
وب سرور یک کامپیوتر است که وظیفه آن ذخیره و نگهداری اطلاعاتی همچون تصاویر، فایلهای Html، شیت Css و… است. در حقیقت با استفاده از اینترنت، دادههای ذخیره شده را در اختیار کاربران قرار میدهد.
بررسی وب سرور از نظر نرمافزاری
وب سرور شامل چندین بخش است که نحوه دسترسی کاربران را به فایلهای میزبان، کنترل و مدیریت میکنند. برای انتشار یک وب سایت، وجود وب سرور استاتیک و داینامیک الزامی است.
وب سرور استاتیک (Static Web Server)
وب سرور استاتیک از یک کامپیوتر (سختافزار) و یک سرور http (نرمافزار) تشکیل میشود. استاتیک با معنای ثابت، نامی شایسته برای این وب سرور است؛ زیرا Static Web Server فایلهای میزبانی شده را همانگونه که هستند، در اختیار مرورگرها قرار میدهد.
وب سرور داینامیک (Dynamic Web Server)
وب سرور داینامیک یا پویا، از یک وب سرور استاتیک به همراه یک نرمافزار اضافی تشکیل میشود. نرمافزار اضافی، اغلب میتواند یک سرور برنامه و یک پایگاه داده باشد. سرور برنامه قبل از فرستادن فایلهای میزبانی شده به مرورگرها، توسط سرویس http به بروزرسانی آنها میپردازد.
انواع وب سرور
با پیشرفت کسب و کارهای آنلاین و فضای مجازی، شرکتها انواع گوناگونی از وب سرورها را با توجه به کاربرد و نیاز سایتها ارائه کردند. انواع مختلفی از وب سرورها عبارتاند از:
وب سرور Apache
وب سرور آپاچی در سال ۱۹۹۵ معرفی شد. این سرویسدهنده وب به دلیل قابلیتهای بالای خود، به سرعت مورد توجه بسیاری از افراد قرار گرفت. وظیفه اصلی وب سرور Apache پردازش درخواستها و ارائه محتوا است. این وب سرور تنها بر روی سیستم عاملهای لینوکس و ویندوز قابل اجرا است. یکی از مهمترین ویژگیهای وب سرور آپاچی، متن باز است؛ یعنی این وب سرور با ارائه کدهای اصلی نرمافزار و امکان اضافه ماژولهای متعدد، سبب تعامل و شخصیسازی بیشتر نیز میشود.
از قابلیتهای دیگر آن، امکان پشتیبانی از زبانهای PHP ،Tcl ،Python و Perl و همچنین پشتیبانی از Htaccess و http/2، مدیریت حجم زیادی از ترافیک با پیکربندی، کنترل و تعامل بیش از ده هزار درخواست و… است. ترکیب وب سرور Apache با Nginx سبب بهترین عملکرد از نظر قدرت و سرعت میشود.
وب سرور Nginx
انجیناکس یک وب سرور متن باز است. این وب سرور بر روی پلتفرمهایی همچون ویندوز، لینوکس و مک قابل نصب است. رایگان بودن و همچنین سرعت مناسب وب سرور انجیناکس، آن را به یکی از محبوبترین سرویسدهندههای وب تبدیل کرده است.
از ویژگیهای دیگر وب سرور Nginx میتوان به حجم کم، امکان رصد کاربران، سرعت بالا در پاسخگویی درخواستها، پشتیبانی از پروتکلهای POP3، SMTP، IMAP، سازگاری با IPV6، امکان فعال کردن بیش از هزاران اتصال به صورت همزمان، مصرف پایین رم و… اشاره کرد.
وب سرور Litespeed
اولین نسخه این وب سرور در سال ۲۰۰۳ توسط شرکت Litespeed Technologies عرضه شد. وب سرور لایت اسپید تنها بر روی سیستم عاملهایی بر پایه لینوکس قابل نصب است. Litespeed به دلیل خدماترسانی سریع، مناسب سایتهای پربازدید است. این سرویسدهنده وب، برخلاف وب سرور آپاچی و انجیناکس، متن باز نیست. همچنین برای استفاده از Litespeed Web Server به مجوز یا license نیاز است؛ به همین خاطر باید مبلغی را به صورت دورهای به شرکت سازنده آن پرداخت کنید.
سرویسدهی همزمان به هزاران کاربر، پشتیبانی از Mod Rewrite ،Mod Security و htaccess، سرعت مناسب، پایداری بالا، تنظیمات آماده و… از ویژگیهای وب سرور لایت اسپید است. البته نصب Apache در کنار Litespeed سبب بهترین عملکرد و سریعترین خدماترسانی نیز میشود.
وب سرور IIS
IIS یا به اختصار Internet Information Services محصول شرکت مایکروسافت است که فقط برای سیستم عامل ویندوز قابل استفاده است، در نتیجه با یک وب سرور رایگان طرف نیستید.
از جمله قابلیتهای IIS، امکان پشتیبانی و سازگاری از Nntp ،Http ،Https ،Ftp ،Ftps ،Smtp و همچنین زبانهای برنامهنویسی PHP، Net و Asp.net است.
وب سرور Lighttpd
Lighttpd Web Server امنترین وب سرور متن باز است که در سال ۲۰۰۳ منتشر شد. این وب سرور همانند Nginx دارای سرعت بالاست و توانایی پاسخگویی همزمان به هزاران درخواست را دارد. به همین خاطر، برای سایتهایی با ترافیک بالا پیشنهاد میشود. Lighttpd مجهز به امکانات پیشرفتهای همچون CGI، FastCGI و URL-Rewriting است. از مزایای این سرویسدهنده وب، انعطافپذیری کامل با زبانهای برنامهنویسی، مصرف کم RAM، پشتیبانی ماژولهای متنوع و حجم کم است.
نحوه عملکرد وب سرور
برای درک بهتر وب سرور، بیایید ببینیم زمانی که بر روی یک لینک کلیک میکنیم یا عبارتی را در مرورگر جستجو میکنیم، چه عواملی سبب نمایش محتوای آن میشود؟
زمانی که شما آدرسی را در مرورگر جستجو میکنید، درخواست شما برای دریافت اطلاعات به سمت دامنه سایت ارسال میشود. بعد از آن، درخواست شما به DNS server منتقل میشود تا IP مخصوص سرور سایت را دریافت کند. با توجه به این که هر سایت IP مخصوص خود را دارد، شما با استفاده از آن، به سرور سایت دسترسی پیدا میکنید. در نتیجه اطلاعات درخواستی شما در قالب صفحات HTML و زیر نظر http به مرورگر شما ارسال میگردد.
به طور کلی، وب سرور مانند یک مترجم، به تجزیه و تحلیل درخواست کاربران میپردازد و با استفاده از عوامل دیگر، دادهها و اطلاعات لازم را در اختیار کاربران قرار میدهد.
قابل ذکر است که اگر صفحه مورد نظر توسط وب سرور پیدا نشود، ارور ۴۰۴ برای کاربر ارسال میشود.
کاربرد وب سرور
با توجه به توضیحات عملکرد و انواع وب سرور، مهمترین کاربرد آن شامل موارد زیر است:
- کنترل و مدیریت محتوای داخلی سایت
- به دست آوردن IP مخصوص سایت توسط نام دامنه
- بررسی خطاهای ایجاد شده و موارد امنیتی
- مدیریت مفاهیم استاتیک و داینامیک با پشتیبانی از زبانهای برنامهنویسی
سخن پایانی
وب سرور قسمتی حیاتی از سایت است، زیرا اگر وب سرورها نباشند، هیچ اطلاعاتی در اختیار کاربران قرار نمیگیرد؛ دقیقا همانند خانهای که کسی داخلش نیست و شما هر چقدر برای ورود و دیدن اعضای خانه تلاش کنید، بیفایده است. امروزه به دلیل خدمات گسترده تحت وب، وب سرورهای پیشرفتهای با توجه به نیاز سایت و کاربر ارائه شده اند. امنیت از جمله مواردی است که باید در انتخاب سرور در نظر بگیرید. پس از انتخاب وب سرور، شما میتوانید با استخدام مدیر میزبان وب، با خیالی آسوده به توسعه وب سایت خود بپردازید.