بهترین و پرکاربردترین وب سرور های متن باز

بهترین و پرکاربردترین وب سرور های متن باز

امتیاز کاربران

ستاره فعالستاره فعالستاره فعالستاره فعالستاره فعال
 

بهترین و پرکاربردترین وب سرور های متن باز

آمار نشان دهنده این است که بیش از ۸۰٪ از وب اپلیکیشن ها و وب سایت ها بوسیله وب سرور های متن باز (open source web servers) پشتیبانی می‌شوند. در این مقاله، به پرکاربردترین وب سرورهای متن باز پرداخته و بصورت مختصر تاریخچه، تکنولوژی، ویژگی‌ها و ... را مورد بررسی قرار داده و همچنین برخی نکاتی که شما به آسانی می‌توانید روی وب سرور خود پیاده سازی کنید را ارائه کرده ام.

براساس ویکیپدیا، وب سرور “سیستم کامپیوتری است که درخواست‌های HTTP را پردازش می‌کند، HTTP پروتکل شبکه ای پایه ای است که برای پخش اطلاعات در سراسر وب (World Wide Web) بکار برده می‌شود. این واژه می‌تواند برای کل سیستم و یا بصورت اختصاصی به نرم افزاری که درخواست‌های HTTP را دریافت و مدیریت می‌کند، بکار برده شود. ”. در این مقاله، ما به نرم‌افزاری اشاره می‌کنیم که اختصاصا درخواست های وبی را که از کاربر می‌آید را پردازش می‌کند.

وب سرور آپاچی (Apache HTTP Server)

وب سرور آپاچی - که اغلب با نام httpd یا بصورت ساده‌تر آپاچی نامیده می‌شود – برای نخستین بار در سال ۱۹۹۵ راه اندازی شد و جشن بیستمین سال کارکرد خود را در فوریه 2015 برگزار کرد. وب سرور آپاچی ۵۲ درصد از همه وب سایت ها را در جهان پشتیبانی می‌کند، و بنابراین پرکاربرد ترین وب سرور می باشد.
همزمان با اینکه httpd آپاچی اغلب بر روی لینوکس بکار برده می‌شود، شما می توانید آپاچی را بر روی OS X و ویندوز نیز راه اندازی کنید. لایسنس وب سرور آپاچی طبیعا برپایه Apache License نسخه ۲ است. خود وب سرور از یک معماری ماژولار استفاده می‌کند بنابراین ماژول‌های اضافی می‌توانند برای افزایش ویژگی ها بارگزاری شوند. برای نمونه، بارگزاری ماژول mod_proxy این امکان را می‌دهد که یک proxy/gateway
را بر روی سرور راه اندازی شود و ماژول mod_proxy_balancer در آپاچی امکان تعادل بار (load balancing) برای تمامی پروتکل‌هایی که پشتیبانی می‌کند را فراهم می‌سازد. از ورژن ۲.۴ ، آپاچی از HTTP/2 بوسیله ماژول mod_http2 پشتیبانی می‌کند.
با نگرش به اینکه وب سرور آپاچی از سال ۱۹۹۶ پرکاربردترین وب سرور بوده است، بنابراین یکی از بزرگترین مزیت‌های آن مستندات بسیار کامل و پشتیبانی یکپارچه از دیگر پروژه های نرم افزاری است. برای اطلاعات بیشتر درباره کارکردها و توانایی های این وب سرور می توانید از وب سایت پروژه وب سرور آپاچی بازدید کنید.

وب سرور انجینکس (NGINX web server)

برنامه نویسی وب سرور NGINX توسط ایگور سیسوف (Igor Sysoev) در سال ۲۰۰۲ آغاز شد در حالی که نسخه عمومی اولیه آن در سال ۲۰۰۴ منتشر گشت. وب سرور NGINX بعنوان یک پاسخ به مشکلی تحت عنوان مشکل C10K توسعه یافت که بصورت مختصر عبارت است از اینکه: “چگونه می‌توان یک وب سرور را طراحی کرد که بتواند بصورت همزمان ده هزار درخواست (Connection) را پاسخگو باشد؟ ”. وب سرور NGINX در فهرست پرکاربرد ترین وب سرورها با اجرا بر روی بیش از ۳۰ درصد از همه وب سایت ها در رده دوم قرار دارد.
NGINX بر معماری رویداد محور بصورت ناهمزمان (asynchronous event-driven) تکیه دارد برای رسیدن به هدفش که پاسخگویی و مدیریت تعداد بسیار زیادی از درخواست‌های همزمان است. وب سرور NGINX در میان ادمین‌ها بخاطر استفاده بسیار کم از منابع سیستم و سادگی در تنظیمات بسیار محبوب شد.
وب سرور NGINX تحت لایسنس BSD-like منتشر شده و فقط نمی‌تواند بصورت یک وب سرور بکار برده شود بلکه بعنوان یک پراکسی سرور یا متعادل کننده بار (load-balancer) نیز بکار برده می‌شود. اطلاعات بیشتر درباره این وب سرور را در سایت انجمن وب سرور NGINX می‌توانید به دست آورید.

وب سرور آپاچی تامکت (Apache Tomcat)

آپاچی تامکت یک نگهدارنده‌ی سرولت جاوا یا همان Java servlet container بصورت متن باز است که بصورت یک وب سرور عمل می‌کند. Java servlet برنامه‌ای است که توانایی های یک سرور را گسترش می‌دهد. اگرچه سرولت‌ها می‌توانند به هر نوعی از درخواست پاسخ دهند، اما اغلب برای برنامه هایی که روی وب سرور‌ها میزبانی می‌شوند بکار برده می‌شوند. چنین وب سرولت‌هایی همتا و کمک کننده جاوا در برابر دیگر تکنولوژی های وب همچون پی اچ پی (PHP) یا ای‌اس‌پی دات نت (ASP .NET) هستند. کد پایه‌ای تامکت بوسیله شرکت Sun Microsystems در پروژه آپاچی در سال 1999 سرمایه‌گذاری شد و تبدیل به یک پروژه آپاچی سطح بالا شد. این وب سرو هم اکنون نزدیک به ۱٪ از همه وب سایت‌های جهانی را پشتیبانی می‌کند.
آپاچی تامکت تحت لایسنس ن Apache version 2منتشر شده است و بصورت معمول برای اجرای نرم افزارهای جاوا بکار برده می‌شود. اگرچه می‌تواند بوسیله Coyote برای اجرا به عنوان وب سرور نرمال گسترش یابد که فایل های لوکال را بصورت مستندات http پاسخگو باشد. اطلاعات بیشتر را می توان در سایت پروژه آپاچی تامکت پیدا کرد.
آپاچی تامکت معمولا در میان دیگر سرورهای برنامه‌های متن باز جاوا هست. برخی نمونه ها عبارتند از: JBoss ، Wildfly و Glassfish

Node.js

Node.js یک محیط جاوااسکریپت سرور-ساید برای برنامه‌های شبکه همچون وب سرورها است. با حجم کوچکتری از بازار، Node.js از ۰.۲٪ از همه وب سایت ها را پشتیبانی می‌کند. Node.js در ابتدا در سال ۲۰۰۹ توسط Ryan Dahl نوشته شد. پروژه Node.js بوسیله موسسه Node.js اداره می‌شود که توسط موسسه پروژه‌های مشترک لینوکس کمک می‌شود.
تفاوت Node.js با دیگر وب سرور‌های پرکاربرد این است که در ابتدا یک محیط مستقل از سیستم عامل (cross-platform) و runtime است که برای برنامه های شبکه‌ای بکار برده می‌شود. Node.js معماری رویداد محور را دارد که قادر به ورودی و خروجی ناهمزمان است. انتخاب نوع طراحی توان عملیاتی و مقایس‌پذیری در وب اپلیکیشن را بهینه می کند که همین موضوع اجازه اجرای برنامه های پاسخ در آن واحد (real-time) و بازی‌های مبتنی بر مرورگر را به ما می‌دهد. Node.js از آنجا که بصورت کامل بخشی از HTML,CSS و Javascript است تفاوتی را در توسعه نرم افزارهای تحت وب ایجاد می‌کند برخلاف وب سرور آپاچی یا وب سرور NGINX که بخشی از بسیاری از نرم افزارهای مختلف دیگر هستند.
Node.js تحت ترکیبی از لایسنس‌ها منتشر شده است که اطلاعات بیشتر و مفیدی درباره Node.js را می‌توانید در وب سایت رسمی پروژه Node.js پیدا کنید.

وب سرور Lighttpd

وب سرور Lighttpd – که بصورت lightly تلفظ می‌شود – نخستین بار در ماه مارس سال ۲۰۰۳ منتشر شد. این وب سرور در حال حاضر نزدیک به ۰.۱٪ از همه وب سایت های جهان را پشتیبانی می کند و تحت لایسنس BSD توزیع شده است.
Lighttpd بخاطر استفاده بسیار کم از حافظه، لود کم روی سی‌پی‌یو (CPU) و بهینه سازی سرعت خود را متمایز سخته است. این وب سرور از معماری رویداد محور استفاده می‌کند که برای شمار زیادی از کانکشن‌های موازی بهینه شده است و مواردی همچون FastCGI, SCGI, Auth ، فشرده سازی خروجی، بازنویسی نشانی (URL-rewriting) و بسیاری دیگر از ویژگی ها را پشتیبانی می‌کند. Lighttpd یک وب سرور پرکاربرد وب فریمورک‌های Catalyst و Ruby on Rails است. اطلاعات مفیدی را درباره این وب سرور را در سایت پروژه Lighttpd می‌توان یافت.

نکاتی درباره وب سرورها:

اگر شما به دنبال آزمایش کردن یکی از وب سرورهای پرکاربرد هستید، به شما توصیه می کنم که حتما یکی از بسته هایXAMPP (سرواژه: Cross-Platform Apache, MariaDB, PHP and Perl)، LAMP (سرواژه: Linux, Apache, MySQL, PHP) یا LEMP (سرواژه: (Linux, NGINX, MySQL, PHP) را دانلود فرمایید. بسته های مشابه فراوانی برای دانلود وجود دارد که هرکدم نیازمندی‌های خاصی را برطرف می‌سازند برای نمونه نسخه‌های مختلف آپاچی و پی‌اچ‌پی را پشتیبانی می‌کنند. این بسته ها معمولا بعنوان نصب کننده های تک کلیکی (یک فایل که با اجرا همه موارد مرتبط نصب می‌شود) در دسترس هستند و یا در لینوکس توسط بخش مدیریت نرم افزار به راحتی در دسترس است.
پس از نصب موفق یکی از این بسته‌ها، شما می‌توانید وب سرور خود را استارت کرده و برنامه خود (مثلا مثال Hello Word) را اجرا فرمایید. این یکی از بهترین روش‌ها برای شروع کشف ورودی و خروجی‌های وب سرور است و اینکه یک وب سرور بصورت کلی چگونه کار می‌کند.

خلاصه

فهرست کاملی از همه وب سرورها معنا و مفهوم خاصی ندارد. در این مقاله کوشش کردم برخی از پرکاربردترین وب سرورها را به همراه تکنولوژیهایی که پشتیبانی می‌کنند را بررسی کنم. لطفا دیدگاه خود درباره این مقاله و نیز وب سرور مورد علاقه خود (به همراه دلیل آن) را بصورت دیدگاه برای ما ارسال فرمایید.
سپاس

نمونه تبلیغ ۱
نمونه تبلیغ ۲
نمونه تبلیغ 3
نمونه تبلیغ 4
نمونه تبلیغ 4
نمونه تبلیغ 4
نمونه تبلیغ 4

لوگوی آموزشگاه فنی مهندسی سایبرتک آموزشگاه فنی مهندسی سایبرتک آموزشگاه سایبرتک برگزارکننده دوره های آموزش شبکه، امنیت Network+ سیسکو CCNA CCNP CCIE مایکروسافت MCSE MCSA میکروتیک لینوکس VMware CEH SQL
4.9 312
Mir Emad Street 1587833134 Tehran, Iran
CyberTech CyberTech Training Center
دفتر اصلی: عباس آباد (مترو بهشتی)، خیابان میرعماد، روبروی سفارت هند، پلاک 33 (دسترسی به ما)
تلفن:02186765000
فکس:02186765900
تارنما:
ایمیل:info(at)CyberTechTraining.com