وب سرور چیست؟
یادداشت ویراستار: اصل این مطلب در فروردین 1398 نوشته شده بود و در آبان 1402 دوباره بررسی و بهروز شده است.
آیا تا به حال به این فکر کردهاید وقتی صفحه وب را باز میکنید، چه اتفاقی می افتد؟ چگونه محتوای صفحه وب از سروری دوردست به مرورگر شما منتقل میشود؟
پاسخ این سوالات به مفهوم وب سرور چیست؟ برمی گردد. وب سرور نرم افزار یا سخت افزاری است که درخواستهای HTTP را از کلاینتها دریافت و پاسخهای HTTP را برای آنها ارسال میکند. پاسخهای HTTP اغلب شامل صفحات وب، تصاویر، فایلهای صوتی و سایر فایلهای دیجیتال هستند.
آشنایی با مفاهیم و تعاریف موجود در شبکه، پیش از دریافت قیمت سرور و خرید آن الزامی ست. در این مقاله فالنیک، به بررسی مفهوم web سرور، انواع، نحوه عملکرد و مزایای استفاده از آن میپردازیم. با فالنیک همراه باشید.
فهرست محتوا
وب سرور چیست؟
وب سرور (web server) به عنوان سیستم میزبانی برنامههای مبتنی بر وب، وظیفه نگهداری و تحویل انواع محتوا را از وب سایت به کلاینت درخواست کننده برعهده دارد. این محتوا شامل متن، عکس، ویدئو و انواع اپلیکیشن داده است. رایجترین کلاینتها برنامههای مرورگر وب هستند و در صورت کلیک روی لینکی خاص یا دانلود فایل از صفحهای از وب، درخواست برای وب سرور ارسال میشود. در ادامه تفاوت سرور و وب سرور برایتان مشخص میشود.
برای اطلاع از قیمت سرور hp روی لینک کلیک کنید.
web server چگونه کار میکند؟
برای دستیابی به صفحه وب، مرورگر شما درخواستی به وب سرور میفرستد تا فایل درخواست شده را از بین فایلهای ذخیره شده پیدا کند. اگر فایل پیدا شود، سرور آن را میخواند و در صورت نیاز آن را پردازش میکند و به مرورگر میفرستد. وب سرور شامل دو بخش سخت افزار و نرم افزار است که با هم کار میکنند:
در قسمت سخت افزاری، وب سرور کامپیوتری است که نرم افزار وب سرور و فایلهای وب سایت را ذخیره میکند. فایلهای وب سایت عبارتند از مستندات HTML، عکس، CSS، فایلهای جاوا اسکریپت، فونت و ویدئو. وب سرور به اینترنت وصل میشود و تبادل فیزیکی دیتا با دیگر دستگاههای متصل به وب را پشتیبانی میکند.
در قسمت نرم افزاری، وب سرور شامل قسمتهای مختلفی است که چگونگی دسترسی کاربران به فایلهای هاست شده را کنترل میکند. این قسمت را سرور HTTP مینامند. سرور HTTP نرم افزاری است که پروتکل HTTP و آدرسهای وب – URLها را میداند. پروتکل HTTP پروتکلی است که مرورگر شما برای دیدن صفحات وب استفاده میکند. سرور HTTP از طریق نامهای دامنه وب سایتها قابل دسترسی است و محتوای این وب سایتهای هاست شده را به دستگاه کاربر منتقل میکند.
برای آشنایی با دامنه و نام دامنه مقاله “دامنه چیست؟” را مطالعه کنید.
معرفی انواع وب سرور
انواع وب سرور به شرح است:
- وب سرور لینوکس
- وب سرور NGINX
- وب سرور آپاچی
- وب سرور IIS
- سرور Lighttpd
- وب سرور Sun Java System
هر یک از این سرورها کاربرد و ویژگیهای خاص خودش را دارند و در راه اندازی وب سایت خود باید هر یک را بهدرستی پیاده سازی کنید.
برای آشنایی با انواع سرور مقاله “سرور چیست؟” را مطالعه کنید. برای بررسی بیشتر پرینتر سرور و فایل سرور، مقالات “پرینتر سرور چیست؟” و “فایل سرور چیست؟” را مطالعه کنید.
در ادامه این وب سرورهای متداول را معرفی میکنیم:
1)نرم افزار وب سرور لینوکس: سرور لینوکس روی سیستمعامل منبع باز لینوکس ساخته شدهاست و به شما امکان میدهد محتوا، برنامهها و خدمات را به کاربران نهایی ارائه دهید. سرورهای لینوکس، سرورهای انعطافپذیر، سازگار و با کارایی بالا و قابلیتهای snapshot فوری، امنیت بهینه و فناوریهای ابری مقیاسپذیر هستند. این سرورها به رفع نیازهای روزافزون خدمات وب، برنامههای کاربردی، مدیریت پایگاه داده و موارد دیگر کمک میکنند.
2) نرم افزار وب سرور NGINX :NGINX یک وب سرور منبع باز محبوب است که منابع را به طور موثر استفاده و اجرا میکند. این وب سرور میتواند حجم عظیمی از ترافیک را مدیریت کند و پروکسی معکوس، خدمات کش HTTP، پروکسی ایمیل و تعادل بار را ارائه دهد. NGINX به عنوان یک وب سرور مقیاس پذیر، سبک و قدرتمند است و قادر است اتصالات همزمان را مدیریت کند. این web سرور برای ارائه محتوای ثابت ایده آل است.
3) نرم افزار وب سرور آپاچی: وب سرور آپاچی یا سرور HTTP آپاچی یک سرور open source است و درخواستهای کاربر را پردازش و اطلاعات و محتوای وب را از طریق HTTP ارائه میدهد. این وب سرور از پایگاه داده MySQL برای ذخیره اطلاعات مهم از قالبی با قابلیت خواندن راحت، استفاده میکند. با کمک زبان برنامه نویسی PHP، آپاچی میتواند محتوای وب پویا ایجاد و ارائه دهد.
4) نرم افزار وب سرور IIS: وب سرور Microsoft Internet Information Service (IIS) دومین وب سرور محبوب دنیاست. IIS 6.0 وب سرور یکپارچه مایکروسافتی و مخصوص ویندوز سرور است که کاربران را قادر به ایجاد و مدیریت وب سایتهای سازمان میسازد. کاربران با IIS قادر به ایجاد، مدیریت وب سایتها، اشتراک گذاری و توزیع اطلاعات در فضای اینترنت و اینترانت هستند.
iis به عنوان وب سرور ویندوز نیز شناخته میشود. وب سرور iis یکی از رایج ترین وب سرورهای مورد استفاده در سیستمعامل ویندوز است. web سرور iis همه کاره و پایدار است و به طور گسترده برای میزبانی برنامههای وب ASP.NET، وب سایت های استاتیک و برنامههای وب ساخته شده روی PHP استفاده میشود. همچنین به عنوان یک سرور FTP برای میزبانی از خدمات WCF کاربرد دارد.
برای مطالعه مقالات “آموزش کامل نصب iis روی ویندوز سرور ۲۰۱۹” و “آموزش کامل نصب iis روی ویندوز ۱۰” در زمینه iis مفید است.
5) وب سرور Lighttpd: این وب سرور رایگان با سیستم عامل FreeBSD ارائه میشود. Lighttpd سریع و ایمن است و انرژی CPU کمتری مصرف میکند.
6) وب سرور Sun Java System: این وب سرور رایگان از Sun Microsystems میتواند روی ویندوز، لینوکس و یونیکس اجرا شود. Sun Java System گزینه خوبی برای مدیریت وب سایتهای متوسط تا بزرگ است.
نقش سرور HTTP در عملکرد web server چیست؟
هر گاه مرورگری به فایلی که روی وب سرور هاست شده نیاز داشته باشد، مرورگر فایل را از طریق HTTP درخواست میکند. وقتی درخواست به وب سرور (سخت افزار) درست برسد، سرور HTTP (نرم افزار) درخواست را قبول کرده و فایل مورد درخواست را پیدا کرده و از طریق HTTP به مرورگر میفرستد. اگر سرور، فایل درخواست شده را پیدا نکند ارور 404 برمیگرداند.
وب سرور از HTTP پشتیبانی میکند. HTTP مخفف Hypertext Transfer Protocol است و همان طور که از نامش پیداست، چگونگی انتقال هایپر تکست یا همان مستندات وب را بین دو کامپیوتر انجام میدهد. این پروتکل مجموعه قوانینی برای ارتباط بین دو کامپیوتر است مثلا:
- فقط کلاینت میتواند درخواست HTTP بدهد و فقط به سرور این درخواست را میفرستد و سرور هم فقط به کلاینت پاسخ میدهد.
- وقتی درخواست فایل از طریق HTTP انجام میشود، کلاینت باید URL فایل را وارد کند.
- وب سرور باید به تمام درخواستهای HTTP پاسخ دهد؛ حداقل یک پیام خطا صادر کند.
در وب سرور، سرور HTTP مسئول پردازش و پاسخ به درخواستهای ورودی است:
- با دریافت درخواست، سرور HTTP ابتدا بررسی میکند URL درخواستی با فایل موجود همخوانی دارد یا نه.
- اگر موجود باشد، وب سرور، محتوا را به مرورگر برمیگرداند اگر موجود نباشد، اپلیکیشن سرور، فایل لازم را میسازد. (در ادامه با وظیفه اپلیکیشن سرور آشنا میشوید.)
- اگر هیچ یک از این کارها قابل انجام نباشد، وب سرور پیام خطا به مرورگر میفرستد که اغلب خطای 404 است.
وب سرورها برای چه مواردی کاربرد دارند؟
وب سرورها در درجه اول برای پردازش و مدیریت درخواستها و پاسخهای HTTP/HTTPS از سیستم مشتری استفاده میشوند. وب سرور کاربردهای دیگری نیز دارد:
- ذخیره و محافظت از دادههای وب سایت: وب سرور میتواند از دادههای حیاتی وب سایت در برابر دسترسی کاربران غیرمجاز محافظت کند.
- کنترل پهنای باند برای تنظیم ترافیک شبکه: وب سرور میتواند به حذف خرابی ناشی از ترافیک بالا وب کمک کند. میزبانهای وب میتوانند پهنای باند را برای مدیریت نرخ انتقال داده از طریق اینترنت و به حداقل رساندن ترافیک اضافی شبکه تنظیم کنند.
- برنامه نویسی وب سمت سرور: ویژگی برنامه نویسی وب سمت سرور به کاربران امکان می دهد صفحات وب پویا را با استفاده از زبانهای برنامه نویسی مانند Ruby،Python و PHP ایجاد کنند.
- میزبانی مجازی: وب سرورها همچنین میتوانند به عنوان سرور مجازی برای اجرای چندین برنامه، وب سایت، داده و سایر خدمات استفاده شوند.
وب سرور استاتیک و داینامیک چیست؟
برای انتشار وب سایت به وب سرور استاتیک یا وب سرور داینامیک نیاز دارید:
وب سرور استاتیک
وب سرور استاتیک یا Stack شامل کامپیوتر (سخت افزار) و سرور HTTP (نرم افزار) است. از این جهت استاتیک نامیده میشود چون سرور فایلهای هاست شده موجود را به مرورگر میفرستد.
وب سرور داینامیک
وب سرور داینامیک شامل وب سرور استاتیک به علاوه نرم افزار اضافی است که اغلب اپلیکیشن سرور و دیتابیس سرور است. از این جهت داینامیک نامیده میشود چون سرور اپلیکیشن، فایلهای هاست شده را قبل از ارسال محتوا به مرورگر از طریق سرور HTTP، آپدیت میکند.
به عنوان مثال برای تولید صفحات وب نهایی که شما در مرورگر میبینید، سرور اپلیکیشن باید تمپلیت HTML را با محتوای گرفته شده از دیتابیس پر کند. سایتهایی مانند MDN و Wikipedia صدها صفحه وب دارند. این نوع سایتها به جای اینکه هزاران داکیومنت استاتیک HTML داشته باشند، از تعداد محدودی تمپلیت HTML و دیتابیس بزرگی تشکیل شده است. بدین ترتیب نگهداری و ارایه محتوا راحتتر است.
ساخت وب سایت استاتیک آسانترین تنظیمات را دارد بنابراین پیشنهاد میشود اولین وب سایت خود را استاتیک بسازید. در حالت داینامیک، سرور محتوا را پردازش و در صورت لزوم آن را با استفاده از دیتابیس ایجاد میکند. این پروسه باعث انعطاف پذیری بیشتر میشود. اپلیکیشن سرورهای زیادی مانند بلاگها و Wikiها یا eCommerce وجود دارد. اگر وب سایت داینامیک بسازید باید تکنولوژی مناسب با نیازهایتان را انتخاب کنید.
انتخاب تامین کننده هاستینگ مناسب برای web سرور
شما میتوانید تمام فایلهای وب سرور را روی کامپیوتر خودتان ذخیره کنید اما راحتتر است اگر آنها را روی وب سرور اختصاصی ذخیره کنید چون:
- وب سرور اختصاصی بیشتر قابل دسترس است، یعنی همیشه روشن و در حال کار است.
- در صورت بروز دان تایم و مشکلات سیستمی، وب سرور اختصاصی همیشه به اینترنت وصل است.
- وب سرور اختصاصی میتواند همواره یک آی پی آدرس داشته باشد که آی پی آدرس اختصاصی نام دارد.
- وب سرور اختصاصی اغلبتوسط شرکت ثالثی تامین میشود.
با تمام این دلایل پیدا کردن تامین کننده هاستینگ خوب نقطه کلیدی در ساخت وب سایت شما است. شرکتهای مختلف را بررسی کنید و بهترین وب سرور را از میان شرکتهایی که نیازهای شما را برآورده میکنند و هزینه مناسبی دارند، انتخاب کنید.
تفاوت وب سرور و وب سرویس چیست؟
تفاوت وب سرور و وب سرویس را میتوانیم اینگونه بیان کنیم که وب سرویس توسط وب سرور اجرا میشود و دادههای خام را به صورت دادههای ساختار یافته ارائه میدهد. وب سرویس هر نرم افزار، اپلیکیشن و تکنولوژی کلودی است که پروتکلهای استاندارد وب مانند HTTP و HTTPS را فراهم میکند تا از طریق اینترنت، دیتا تبادل شود، مثلا XML – Extensible Markup Language.
اپلیکیشن میتواند به زبانهای مختلفی نوشته شود اما ویژگی مهم وب سرویس این است که از طریق وب سرویس امکان برقراری ارتباط بین انواع اپلیکیشنها و انتقال دیتا بین کلاینت و سرور وجود دارد. مثلا وب سرویس ارتباط بین چندین اپ را با HTML ،XML ،WSDL ،SOAP ،UDDI ،REST و … برقرار میکند. XML دیتا را تگ میکند، SOAP پیغام را منتقل میکند و WSDL قابلیت دسترسی سرویس را مشخص میکند
سرویس های ویندوز سرور چه کاربردی دارن؟
سلام بر شما
کاشی عزیز؛ برای آشنایی با کاربرد سرویسهای سرور به مقاله انواع سرویس های ویندوز سرور و کاربرد آنها مراجعه کنید.