وب سرور نرمافزاری است که روی یک کامپیوتر متصل به اینترنت اجرا میشود، درخواست مرورگر را از طریق پروتکل HTTP یا HTTPS دریافت میکند و صفحه، تصویر یا داده خواستهشده را برمیگرداند. به کامپیوتری که این نرمافزار روی آن اجراست هم وب سرور میگویند. هر بار که آدرس سایتی را باز میکنید، یک وب سرور به شما پاسخ داده است.
در این مقاله وب سرور را از دو جنبه سختافزاری و نرمافزاری توضیح میدهیم، مسیر یک درخواست را قدمبهقدم دنبال میکنیم، انواع وب سرور از جمله Apache، Nginx، LiteSpeed، IIS و Lighttpd را مقایسه میکنیم و نکات انتخاب و امنیت آن را میگوییم.
در این مقاله میخوانید:
- وب سرور چیست و چطور کار میکند
- وب سرور استاتیک و داینامیک
- انواع وب سرور و مقایسه آنها
- انتخاب، امنیت و اشتباهات رایج
وب سرور چگونه کار میکند؟
مسیر یک درخواست ساده، از تایپ آدرس تا دیدن صفحه، این است:
- مرورگر با کمک سیستم نام دامنه (DNS) آدرس IP سرور سایت را پیدا میکند.
- یک اتصال به سرور برقرار میشود و در HTTPS، ارتباط رمزنگاری میشود.
- مرورگر درخواست HTTP میفرستد؛ مثلاً «صفحه اصلی را بده».
- وب سرور درخواست را بررسی میکند: اگر فایل ثابت است، مستقیم برمیگرداند؛ اگر صفحه پویاست، درخواست را به برنامه سایت میدهد.
- پاسخ با یک کد وضعیت، مثل 200 برای موفق یا 404 برای پیدا نشدن، به مرورگر برمیگردد و صفحه نمایش داده میشود.
توضیح استاندارد این فرایند را در مقاله «وب سرور چیست» در MDN میتوانید بخوانید.
وب سرور از جنبه سختافزار
کامپیوتری همیشه روشن با پردازنده، حافظه و دیسک کافی و اتصال پایدار به اینترنت، معمولاً در یک دیتاسنتر. بیشتر سایتها روی سرور مجازی یا اشتراکی در دیتاسنتر میزبانی میشوند، نه روی سرور فیزیکی اختصاصی.
وب سرور از جنبه نرمافزار
برنامهای که درخواستها را مدیریت میکند، فایلها را میفرستد، اتصال امن را برقرار میکند و درخواستهای پویا را به برنامه سایت تحویل میدهد.
وب سرور استاتیک و داینامیک چه فرقی دارند؟
وب سرور استاتیک فایلها را همانطور که روی دیسک هستند میفرستد؛ مناسب صفحات ثابت، تصاویر و فایلهای CSS و جاوااسکریپت. وب سرور داینامیک علاوه بر آن، برنامهای مثل PHP یا ASP.NET Core را اجرا میکند که صفحه را بر اساس داده پایگاه داده و کاربر، لحظهای میسازد. بیشتر سایتهای امروزی ترکیبی از هر دو هستند.
🎫 همین حالا ثبتنام کنید و از طریق تیکت، سفارش خود را ثبت نمایید
ورود به پنل کاربریانواع وب سرور؛ مقایسه Apache، Nginx، LiteSpeed، IIS و Lighttpd
| وب سرور | ویژگی اصلی | کاربرد رایج |
|---|---|---|
| Apache | انعطاف زیاد و ماژولهای فراوان، تنظیم در سطح پوشه با فایل htaccess | هاستهای اشتراکی لینوکسی و سایتهای PHP |
| Nginx | مصرف حافظه کم و مدیریت همزمان تعداد زیادی اتصال | سایتهای پرترافیک، پراکسی معکوس و توزیع بار |
| LiteSpeed | سازگار با تنظیمات Apache و کش داخلی قوی | هاستهای اشتراکی پرسرعت |
| IIS | یکپارچه با ویندوز سرور و ابزارهای مایکروسافت | میزبانی برنامههای ASP.NET روی ویندوز |
| Lighttpd | بسیار سبک با مصرف منابع کم | سرورهای کممنابع، دستگاههای نهفته و فایلهای ثابت |
وب سرور Lighttpd چیست؟
Lighttpd (خوانده میشود «لایتی») یک وب سرور متنباز و سبک است که برای مصرف کم حافظه و پردازنده طراحی شده است. در سرورهایی با منابع محدود، روترها و دستگاههای نهفته، یا برای سرو کردن سریع فایلهای ثابت کنار یک وب سرور دیگر کاربرد دارد. اکوسیستم ماژولها و منابع آموزشی آن از Apache و Nginx کوچکتر است.
وب سرور IIS چیست؟
IIS وب سرور مایکروسافت است که روی ویندوز سرور اجرا میشود و برای میزبانی برنامههای ASP.NET رایج است. برنامههای ASP.NET Core معمولاً با سرور داخلی Kestrel اجرا میشوند و IIS یا Nginx جلوی آن نقش پراکسی معکوس را دارد؛ جزئیات را در مستندات وب سرورهای ASP.NET Core در مایکروسافت ببینید.
چطور وب سرور مناسب را انتخاب کنیم؟
- فناوری سایت: برنامه ASP.NET Core روی Kestrel پشت IIS یا Nginx، سایت PHP روی Apache، LiteSpeed یا Nginx.
- ترافیک: برای تعداد زیاد اتصال همزمان، Nginx یا LiteSpeed کارایی بهتری دارند.
- نوع میزبانی: در هاست اشتراکی، وب سرور را میزبان انتخاب کرده است؛ در سرور مجازی انتخاب با شماست.
- تیم فنی: وب سروری را انتخاب کنید که تیم شما در پیکربندی و عیبیابی آن تجربه دارد.
امنیت وب سرور؛ حداقلهایی که باید رعایت شود
- فعال بودن HTTPS با گواهی معتبر و تمدید خودکار.
- بهروزرسانی منظم نرمافزار وب سرور و سیستمعامل.
- غیرفعال کردن ماژولها و فهرستگیری پوشههایی که استفاده نمیشوند.
- تنظیم هدرهای امنیتی و محدود کردن نرخ درخواست برای مقابله با حملات.
- جدا کردن دسترسیها و پایش لاگها.
📰 پیشنهاد برای مطالعه:
دلایل نیاز به پشتیبانی وب سایت و اهمیت پشتیبانی سایتاشتباهات رایج در راهاندازی وب سرور
- باقی گذاشتن تنظیمات پیشفرض و صفحههای نمونه روی سرور واقعی.
- نمایش جزئیات خطا و نسخه نرمافزار به کاربران.
- نداشتن کش برای فایلهای ثابت و فشردهسازی پاسخها.
- تمدید نکردن گواهی SSL و از دسترس خارج شدن سایت.
سوالات متداول درباره وب سرور
فرق وب سرور و هاست چیست؟
هاست سرویس میزبانی است که فضای سرور، اتصال اینترنت و مدیریت آن را در اختیار شما میگذارد. وب سرور نرمافزاری است که روی همان سرور اجرا میشود و به درخواستهای مرورگر پاسخ میدهد.
بهترین وب سرور کدام است؟
بهترین وب سرور مطلق وجود ندارد. انتخاب به فناوری سایت، ترافیک و تجربه تیم بستگی دارد. برای سایتهای پرترافیک Nginx و LiteSpeed، برای سازگاری گسترده Apache و برای ASP.NET روی ویندوز، IIS رایج است.
آموزش وب سرور را از کجا شروع کنیم؟
ابتدا پروتکل HTTP و مفاهیم DNS و HTTPS را یاد بگیرید، سپس یک وب سرور مثل Nginx را روی یک سرور مجازی آزمایشی نصب و پیکربندی کنید و با مستندات رسمی همان وب سرور جلو بروید.
آیا میشود روی کامپیوتر شخصی وب سرور راه انداخت؟
برای یادگیری و تست بله، اما برای سایت واقعی مناسب نیست؛ چون به آدرس ثابت، روشن بودن دائمی، امنیت و پهنای باند پایدار نیاز دارد که دیتاسنتر فراهم میکند.
0 نظر
برای ثبت نظر لطفاً کلیک کنید
لطفاً برای ثبت نظر ابتدا وارد حساب کاربری خود شوید