سرور وب
کارساز وب، سرور وب یا وب سرور (به انگلیسی: web server)، سامانهای (میزبان یک نرمافزار)، یا سختافزاری برای اجرای یک نرمافزار است که امکان پاسخگوئی به درخواستهای کاربران شبکه جهانی وب را دارد. بهطور کلی یک وب سرور میزبان یک یا چند وب سایت است که درخواستهای ارسالی از پروتکل اچ تی تی پی یا چندین پروتکل را پردازش میکند.
اصلیترین وظیفه یک وب سرور میزبانی و ذخیرهٔ صفحات وب، پردازش آنها و ارسال صحیح اطلاعات پردازش شده در صفحات وب به کاربران است. ایجاد ارتباط بین کاربر و سرور از طریق جایی به نام Hypertext Transfer Protocol یا به اختصار HTTP انجام میشود. اطلاعات ارسالی سرور به کاربر معمولاً در قالب ساختار HTML است که میتواند حاوی عکس، صفحات نوشتاری و صفحات کد نویسی شده باشد.
در پاسخ به درخواست کاربر برای ارتباط با یک صفحه وب مشخص توسط پروتکل HTTP ارسال میکند، سرور بعد از دسترسی به صفحه درخواستی و پردازش آن، پاسخ کاربر را ارسال میکند، و اگر صفحه مورد درخواست کاربر را پیدا نکرد پیامی مبنی بر وجود مشکل در اطلاعات درخواستی به دستگاه کاربر میفرستد. اطلاعات رسیده به ماشین کاربر ابتدا توسط یک مرورگر وب یا خزنده وب دریافت میشود.
در واقع به دو معنی است:
- یک برنامه کامپیوتری است که مسئول قبول کردن درخواستهای http از کارخواهان است که همان مرورگرهای وب هستند و پاسخها را به همراه یک سری اطلاعات به آنها پست میکنند. این پاسخها همان صفحات HTML هستند. بهطور مثال اگر در صفحه مرورگر تان آدرس http://fa.wikipedia.org/index.php را وارد کنید، یک درخواست به دامنه ای که نامش fa.wikipedia.org است، فرستاده میشود. آنگاه سرور صفحه index.php را برای شما میفرستد.
- یک کامپیوتر است که یک برنامه کامپیوتری را اجرا میکند و کارایی اش همانند مطالبی است که در بالا گفته شد.
هر کامپیوتری میتواند با نصب نرمافزار وب سرور، به سرور وب تبدیل شود.
سرورها بهطور کلی به ۲ دسته تقسیم میشوند:
سرورهای اشتراکی: بر روی هر یک از این کامپیوترها، معمولاً حدود ۱۵۰۰ سایت میزبانی میشوند که نسبت به سرورهای اختصاصی از قدرت بسیار کمتری نیز برخوردارند. فضای این سرور بین مشترکین مختلف تقسیم خواهد شد. این نکته بسیار مهم است که این تعداد سایت، سرور را کند کرده و همچنین چون طراحهای مختلفی این سایتها را طراحی کردهاند ممکن است تعداد زیادی از این وب سایتها غیر بهینه طراحی شده باشند که در نهایت، عملکرد سایت به شدت تحت تأثیر قرار خواهد گرفت.
سرورهای اختصاصی: در این نوع سرورها، کامپیوتر به صورت اختصاصی در انحصار یک استفادهکننده (شرکت طراح) میباشد، بنابراین این سرور توسط طراحهای مختلف به صورت اشتراکی استفاده نمیشود، همچنین چون معمولاً فقط بین ۱ یا چند سایت بر روی این سرور میزبانی میشوند و همه سایتها نیز توسط یک تیم طراحی، تولید شدهاند بنابراین امکان تحت تأثیر قرار گرفتن سایت توسط سایتهای غیر بهینه طراحی شده توسط دیگران وجود نخواهد داشت و امنیت سایت بالا میرود. این سرورها در دو حالت فیزیکی و مجازی سرویس میدهند.
ویژگیهای مشترک
در عمل بسیاری از سرورهای وب، ویژگیهای زیر را نیز پیادهسازی میکنند:
- شناسایی: درخواست شناسایی اختیاری قبل از اجازه دسترسی به انواع منابع
- نه تنها مفاهیم استاتیک (مفاهیم فایلی که بر روی سیستم فایلی وجود دارد) بلکه مفاهیم داینامیک را با یک یا چند ساختار نیز مانند SSI, CGI, SCGI, FastCGI , JSP, PHP, ASP, ASP.NET اداره میکند.
- پشتیبانی از HTTPS تا به کاربران اجازه دهد اتصالات مطمئنی به سرور را بر روی پورت ۴۴۳ به جای ۸۰ برقرار کنند. این نوع اتصال روی پروتکل SSL پیادهسازی میشود.
- فشرده سازی مطالب تا بتوان از حجم پاسخها کم کرد. (توسط کدسازی GZIP)
- پشتیبانی از فایلهای بزرگ تا بتواند فایلهای بزرگتر از ۲ گیگا بایت را سرویس دهی کند.
- کنترل کردن پهنای باند: تا سرعت پاسخها را محدود کند و شبکه را پرازدحام نکند و قادر باشد تعداد بیشتری کارخواه را سرویس دهی کند.
سرورهای اینترنتی
آپاچی
این سرور وب در توسعه و همگانی شدن وب جهانی نقش بسیار مهمی داشتهاست. این سرور وب که به زبان C نوشته شدهاست دارای قابلیت cross- platform بوده و بر روی ماشینهای مختلف قابل اجرا میباشد. دلیل انتخاب این اسم برای این سرور وب را نیز دو مورد ذکر کردهاند اول اینکه به یکی از قبایل قدیمی بومی آمریکا که به خاطر مقاومت و مهارت در ساخت ابزار آلات جنگی مشهور میباشند احترام گذاشته شود و ثانیاً به این دلیل که (Root)ریشه پروژه به صورت یک سری پچ (Patch)میباشد. این سرور وب در یک گروه و به صورت کد باز (open source) گسترش یافت و از سال ۱۹۹۶ به عنوان محبوبترین سرور وب برای HTTP در وب جهانی شناخته شده بود ولی در سال ۲۰۰۵ میدان مبارزه را به IIS مایکروسافت باخت و در حال حاضر نزدیک به ۴۹٪ بازار سرورهای وب جهان را به خود اختصاص دادهاست همچنین MAC OS آن را به عنوان سرور وب اصلی در پشتیبانی از WEB OBJECT خود برگزیدهاست. این سرور وب دارای پودمانهای امنیتی بسیار خوبی از جمله mod_access, mod_auth, mod_digest میباشد. آپاچی برای میزبانی هر دو نوع وب ایستا و وب پویا مناسب است.
IIS (Internet Information Services)
سرور وبی است که ارائه دهنده آن شرکت مایکروسافت میباشد و آخرین نسخه آن IIS 7.5 است که برای سیستم عاملهای Widows Server 2012 و Windows 8 طراحی شدهاست. در واقع IIS مجموعهای از سرویسهای اینترنتی است که به صورت یکجا نمایش داده شدهاست. طبق آخرین آماری که منتشر شد بعد از سرور وب آپاچی بیشترین محبوبیت را بین کاربران داشتهاست و هماکنون نزدیک به ۳۶٪ بازار سرورهای وب جهان را در اختیار دارد. پلت فرمی که این سرور وب پشتیبانی میکند مایکروسافت ویندوز میباشد و در محیطهای دیگر کار نمیکند.
NGINX
سرور وبی است که ارائه دهنده آن شرکت NginX میباشد.
Nginx بهطور خاص برای بررسی محدودیتهای عملکرد سرور Apache طراحی شدهاست.
همچنین از آن به عنوان سرور پروکسی معکوس و کَش HTTP نیز استفاده میشود.
برای حفظ تعادل در وب سایت نیز از این سرویس NginX استفاده میشود.
ایگور سیسوف مهندس نرمافزار روسی بود که Nginx را برای اولین بار عرضه کرد.
مقایسه عملکردهای امنیتی سرورهای وبِ آپاچی و IIS
قابلیت | آپاچی | IIS |
---|---|---|
ورود امن | بله | بله |
SSL | بله | بله |
Basic Authentication | بله | بله |
Digest Authentication | بله | بله |
LDAP Authentication | بله | بله |
Passport Authentication | بله | نه |
Active Directory Authentication | بله | فقط با ماژولهای third-party |
ترجمه مسیر
سرور وب میتوانند کامپوننت مسیر url را نگاشت کنند به:
- منابع فایل سیستم محلی (برای درخواستهای ایستا)
- نام برنامه داخلی یا خارجی (برای درخواستهای پویا)
برای مثال کاربر آدرس زیر را درخواست میکند :http://www.example.com/path/file.html مرورگر وب کاربر آن را به یک اتصال به http://www.example.com با درخواست http 1.1 ترجمه میکند: GET/path/file.html.php HTTP/1.1 HOST: www.example.com سرور وب بر روی www.example.com، مسیر درخواستی را به آدرس مسیر اصلی اضافه میکند. آنگاه سرور وب اگر فایل وجود داشته باشد آن را خوانده و پاسخ را که مجموعهای از مطالب فایل است به عنوان پاسخ میفرستد.
سهم استفاده در بازار
در زیر لیستی از نرمافزارهای سرور وب داده شدهاست که در برآورد Netcraft در ژانویه ۲۰۰۹ منتشر شدهاست
فروشنده | محصول | وب سایتهای میزبانی شده | درصد |
---|---|---|---|
بنیاد نرمافزار آپاچی | وبسرور آپاچی | ۹۶٬۵۳۱٬۰۳۳ | ۵۲٫۰۵٪ |
مایکروسافت | IIS | ۶۱٬۰۲۳٬۴۷۴ | ۳۲٫۹۰٪ |
گوگل | GWS | ۹٬۸۶۴٬۳۰۳ | ۵٫۳۲٪ |
انجیناکس | انجیناکس | ۳٬۴۶۲٬۵۵۱ | ۱٫۸۷٪ |
lighttpd | lighttpd | ۲٬۹۸۹٬۴۱۶ | ۱٫۶۱٪ |
Oversee | Oversee | ۱٬۸۴۷٬۰۳۹ | ۱٫۰۰٪ |
دیگر | - | ۹٬۷۵۶٬۶۵۰ | ۵٫۲۶٪ |
مجموع | - | ۱۸۵٬۴۷۴٬۴۶۶ | ۱۰۰٫۰۰٪ |
خطاهای متداول در سرور وب
allowDefinition=‘MachineToApplication’ beyond application level
HTTP Error 401.3–Unauthorized
Failed to update database “C:\BEGASPNET\RELEASE\APP_DATA\ASPNETDB.MDF”
HTTP Error 403.14–Forbidden
HTTP Error 404.0–Not Found
- خطای ایجاد اتصال به سرور
-HTTP Error 500.21
- خطای زمان اجرا
منابع
- ↑ کارساز و وب واژههای مصوب فرهنگستان زبان و ادب فارسی به جای Server و Web در انگلیسی هستند. «واژهنامه مرجع برای ترجمه محیط لینوکس» (PDF). شورای عالی انفورماتیک. بایگانیشده از اصلی (PDF) در ۱۲ ژانویه ۲۰۱۲. دریافتشده در ۲۸ دسامبر ۲۰۱۱.
Web server در ویکیپدیای انگلیسی