تفاوت سرور و وب سرور (Web server)
زمانیکه یک مرورگر مانند گوگل کروم را باز میکنید و درخواست پیدا کردن عکس، متن یا ویدئو برای یک موضوع خاص را دارید، این درخواست شما توسط وبسرورها پاسخ داده میشود. در واقع از طریق مرورگر و اینترنت درخواست شما به یک وب سرور (Web server) ارسال میشود و سپس براساس محتواهای ذخیره شده در سیستم وب سرور آن درخواست به کاربران تحویل داده میشود. ما هر روز با وب سرورهای متعددی سروکار داریم که به درخواستهای گوناگون ما پاسخ میدهند، پس اینکه بدانیم وب سرور چیست و بهطوردقیق چگونه عمل میکند؟ باعث میشود تا از این سیستم به بهترین نحو استفاده کنیم.
⏲ مدت زمان تخمینی مطالعه: 10 دقیقه
فهرست موضوعات
وب سرور چیست؟
وب سرور (Web server) مبتنی بر نرمافزار و سختافزار است که از HTTP (پروتکل انتقال ابرمتن) و پروتکلهای دیگر برای پاسخ به درخواستهای مشتری که از طریق شبکه جهانی وب انجام میشود، استفاده میکند. وظیفهی اصلی وب سرور نمایش محتوای وبسایت از طریق ذخیرهسازی، پردازش و ارائه صفحات وب به کاربران است. علاوه بر HTTP، وب سرورها همچنین از SMTP (پروتکل انتقال ایمیل ساده) و FTP (پروتکل انتقال فایل) که برای ایمیل، انتقال فایل و ذخیرهسازی استفاده میشود، نیز پشتیبانی میکنند.
سختافزار وب سرور به اینترنت متصل است و امکان تبادل داده با سایر دستگاههای متصل را فراهم میکند، در حالیکه نرمافزار وب سرور نحوهی دسترسی کاربر به فایلهای میزبانی شده را کنترل میکند. فرآیند وب سرور نمونهای از مدل مشتری/سرور است و تمامی رایانههایی که میزبان وبسایتها هستند باید دارای نرمافزار وب سرور باشند.
در حالیکه وب سرورها بهطورمعمول میزبان وب سایتهایی میشوند که در اینترنت قابل دسترسی هستند، با اینحال آنها قابلیت برقراری ارتباط بین مشتریان وب و سرورها در شبکههای محلی مانند اینترانت را نیز دارند. حتی میتوان یک وب سرور را در دستگاهی مانند دوربین دیجیتال تعبیه کرد تا کاربران بتوانند از طریق هر مرورگر وب معمولی موجود با آن دستگاه ارتباط برقرار کنند.
سرور استوک g10
انواع وب سرور
انواع مختلفی از وب سرورها وجود دارد با توجه به ویژگیها و مزایای خاصی که ارائه میدهند، میتوانید آنها را براساس نیازها و ترجیحات خود انتخاب کنید. برخی از رایجترین وب سرور (Web server) ها عبارتند از:
- Apache HTTP Server: این محبوبترین وب سرور در جهان است که بر روی 60 درصد از تمام ماشینهای سرور وب اجرا میشود.
این نرمافزار توسط بنیاد نرمافزار آپاچی توسعه یافته و یک نرمافزار منبع باز است، به این معنا که هر کسی میتواند به کد آن دسترسی داشته باشد و آن را تغییر دهد.
Apache HTTP Server میتواند بر روی سیستمعاملهای مختلف مانند لینوکس، ویندوز، MacOS و … اجرا شود. این سرور از تنظیمات بسیار زیادی پشتیبانی میکند و ویژگیهای متعددی میزبانی مجازی، تعادل بار، امنیت و فشردهسازی را در اختیار کاربران قرار میدهد.
- Microsoft Internet Information Services (IIS): این یک وب سرور توسعه یافته توسط مایکروسافت است که فقط بر روی سیستمعامل ویندوز اجرا میشود و بهطورکامل با آن ادغام شده در نتیجه راهاندازی و مدیریت برنامه آسان است.
این وب سرور مایکروسافت از پشتیبانی مشتری عالی برخوردار است و از ویژگیهای متعددی مانند احراز هویت، ذخیرهسازی حافظه پنهان، ورود به سیستم و رمزگذاری پشتیبانی میکند.
- Nginx: این یک وب سرور با کارایی بالا است که بر روی 25 درصد از تمام ماشینها مبتنی بر وب سرور (Web server) اجرا میشود. این برنامه توسط کمپانی NGINX، توسعه یافته و بر روی سیستمعاملهای مختلف مانند لینوکس، ویندوز، MacOS و غیره اجرا میشود. Nginx بیشتر برای رسیدگی به ترافیک بالا و پاسخگویی به درخواستهای همزمان طراحی شده و از بسیاری از ویژگیهای متعدد در این زمینه مانند پروکسی معکوس، تعادل بار، پخش رسانه و امنیت پشتیبانی میکند.
- Lighttpd: یک وب سرور (Web server) رایگان و منبع باز است که برای کارهای سریع، سبک و کارآمد در سال 2003 طراحی و به زبان C نوشته شده است. Lighttpd بهدلیل حجم کم انتخاب خوبی برای میزبانی وبسایتهای پربازدید در سرورهای منابع پایین است. یکی از ویژگیهای کلیدی Lighttpd طراحی ماژولار آن است که به کاربران امکان سفارشیسازی و گسترش عملکرد سرور را به راحتی ارائه میدهد. این برنامه از ویژگیهای متعددی مانند FastCGI، بازنویسی URL، و زبانهای برنامه نویسی سمت سرور مانند PHP و Ruby پشتیبانی میکند.
- Apache Tomcat: یک وب سرور (Web server) رایگان است که بهطور ویژه در زمینهی Java Servlets تخصص دارد. آپاچی تامکت در ابتدا توسط Sun Microsystems توسعه یافت و سپس در سال 1999 به بنیاد نرمافزار آپاچی منتقل شد. این برنامه تحت پورت 8080 کار میکند و با قابلیتهای PHP، ASP.net، Perl، Python و … سازگاری دارد.
- Jigsaw Server: Jigsaw (سرور W3C) از کنسرسیوم وب جهانی میآید. این برنامه نیز منبع باز و رایگان است و قابلیت اجرا بر روی پلتفرمهای مختلف مانند لینوکس، یونیکس، ویندوز، Mac OS X Free BSD و غیره را دارد. Jigsaw به زبان جاوا نوشته شده و میتواند اسکریپتهای CGI و برنامههای PHP را اجرا کند.
نحوه کار وب سرور
وب سرورها از مدل کلاینت-سرور (client-server) پیروی میکنند. در این ساختار، یک برنامه که به عنوان کلاینت نیز شناخته میشود، از برنامه دیگری، سرور، منبع یا سرویسی را درخواست میکند. نحوه کار وب سرور (Web server) برای پردازش درخواستهای مشتریان شامل چندین مرحله میشود که عبارتند از:
- هنگامی که یک کاربر وب میخواهد محتوای یک وبسایت را بارگذاری کند، مرورگر وب کاربرد درخواست دسترسی از طریق اینترنت میکند. این درخواست HTTP نامیده میشود.
مرورگر وب آدرس IP وب سایت درخواستی را با ترجمه URL صفحات وب از طریق سیستم نام دامنه (DNS) یا با جستوجو در حافظه پنهان آن سرچ میکند. این فرآیند باعث اتصال با وب سروری میشود که فایلهای سایت در آن بهعنوان میزبان، قرار دارد.
- وب سرور (Web server) درخواست HTTP را دریافت کرده و آن را از طریق سرور HTTP خود پردازش میکند. هنگامی که سرور HTTP آن درخواست را بپذیرد، در فایلهای سرور جستوجو میکند تا دادههای مربوطه را به دست آورد.
- پس از آن، وب سرور فایلهای سایت را به مرورگر وبی که درخواست ارسال کرده است، برمیگرداند و سپس، کاربر میتواند محتوای وب سایت را مشاهده کند.
با این حال، اگر سرور HTTP نتواند فایلهای درخواستی را پیدا یا پردازش کند، با یک پیام خطا به مرورگر وب پاسخ میدهد. یکی از رایجترین آنها خطای 404 است، اما در صورت وجود مشکلات مجوز ممکن است خطای 403 نیز ظاهر شود.
از سوی دیگر، اگر یک وب سرور نتواند پاسخ به موقع از سرور دیگری که بهعنوان یک پروکسی یا دروازه عمل میکند، دریافت کند، خطای 504 رخ میدهد.
قیمت سرور HP DL380 G10
تفاوت سرور و وب سرور
سرور یک اصطلاح کلی برای رایانه یا سیستم سختافزاری است که خدماتی را به رایانهها یا برنامههای دیگر از طریق شبکه ارائه میدهد. یک سرور میتواند عملکردهای مختلفی مانند ذخیره فایلها، اجرای برنامهها، ارسال ایمیل، میزبانی وبسایتها و غیره را انجام دهد؛ اما وب سرور (Web server) نوع خاصی از سرور است که بیشتر برای میزبانی وبسایتها مورد استفاده قرار میگیرد و صفحات وب را با استفاده از Hypertext و پروتکل انتقال HTTP به مشتریان از طریق مرورگرهای وب ارائه میدهد.
کاربرد سرور
کاربرد سرورها با توجه به نیازها و ترجیحات کاربران و یا سازمانهایی که از آن استفاده میکنند، بسیار گسترده است. بهطورمعمول از سرورها برای ارائه یک یا چند سرویس به رایانهها یا دستگاههای دیگر در شبکه یا اینترنت استفاده میشود. برخی از کاربردهای رایج سرور عبارتند از:
- وب سرورها برای میزبانی وبسایتها و برنامههای کاربردی تحت وب مانند Apache، IIS، Nginx و …
- سرورهای فایل برای ذخیره و اشتراکگذاری فایلها مانند Windows Server، Linux Server و NAS devices
- سرورهای پست الکترونیکی برای ارسال و دریافت ایمیل از طریق اینترنت مانند Gmail، Outlook و Yahoo Mail
- سرورهای چاپ برای انجام کارهای چاپ و مدیریت چاپگرها مانند سرورهای چاپ Windows Print Server، CUPS و Print Server Appliance
- سرورهای پایگاه داده با استفاده از زبان برنامهنویسی دادهها را در قالب ساختار یافته ذخیره و مدیریت میکنند. چند نمونه از سرورهای پایگاه داده عبارتند از MySQL، Oracle و MongoDB
- سرورهای بازی میزبانی بازیهای آنلاین و چند نفره مانند Minecraft، Counter-Strike و World of Warcraft
- سرورهای برنامه برای اجرای برنامههای نرمافزاری مانند Tomcat، GlassFish و Node.js
ابعاد سرور dl360 g8
کاربرد وب سرور
وب سرورها در درجه اول برای پردازش و مدیریت درخواستها و پاسخهای HTTP/HTTPS از سیستم مشتری استفاده میشوند. بهطورکلی وب سرور برای میزبانی وبسایتها استفاده میشود اما وب سرورهایی نیز وجود دارند که برای کاربردهای دیگر مانند بازی، ذخیرهسازی، FTP، ایمیل و غیره از آنها استفاده میشود. در کل یک وب سرور میتواند چندین عملکرد مختلف را در اختیار کاربران قرار دهد که برخی از آنها عبارتند از:
- ذخیره و محافظت از دادههای وبسایت: وب سرورها میتوانند دادههای حیاتی وبسایتها را ذخیره کنند و همچنین از آنها در برابر کاربران غیرمجاز ذخیره محافظت کنند.
- کنترل پهنای باند برای تنظیم ترافیک شبکه: یک وب سرور میتواند به حذف خرابی و اختلال ناشی از ترافیک وب بالا در شبکه کمک کند. در واقع سرورهایی که بهعنوان میزبانهای وب مورد استفاده قرار میگیرند، میتوانند پهنای باند را برای مدیریت نرخ انتقال داده از طریق اینترنت و به حداقل رساندن ترافیک اضافی شبکه تنظیم کنند.
- برنامه نویسی وب سمت سرور: یکی دیگر از کاربردهای وب سرور فراهم کردن امکان و ویژگی برنامهنویسی وب برای سمت کاربران است. این ویژگی باعث میشود تا کاربران بتوانند صفحات وب پویا (dynamic) را با استفاده از زبانهای برنامهنویسی مانند Ruby، Python و PHP ایجاد کنند.
- میزبانی مجازی (Virtual hosting): یکی دیگر از کاربردهای وب سرورها میزبانی مجازی است که میتوانید از آنها بهعنوان سرور مجازی برای اجرای چندین برنامه، وبسایت، داده و سایر خدمات استفاده کنید.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.