وب سرور آپاچی گستردهترین و محبوبترین سرور HTTP است که از زبانهای مشهور PHP و Perl پشتیبانی میکند. این نرمافزار معروف، توسط بنیاد Apache Software در ایالاتمتحده آمریکا توسعه یافته است و توسط آنها حفظ و نگهداری میشود. اکثر سرورهای حال حاضر دنیا توسط وب سرور آپاچی اداره میشوند، که دلیل آن سرعت، امنیت و قابل اطمینان بودن آن است. آپاچی نام یک قبیله بومی آمریکا است. این قبیله به شجاعت و مهارت در جنگ شهرت داشتند. این نام در سال 1995 برای توسعه اولین نسخه از این وب سرور برگزیده شد. در این مقاله به این موضوع میپردازیم که آپاچی چیست و چرا از آن استفاده میکنیم.
آپاچی در سال 1996 روانه بازارهای جهانی شد و فقط به یک سال زمان نیاز داشت تا تبدیل به محبوبترین وب سرور جهان شود. این نرمافزار به دلیل متن باز (اپن سورس) بودن، از بسیاری از فناوریهای پیشرفته پشتیبانی میکند و طیف گستردهای از ویژگیها مانند SSL و CGL را فراهم میکند. آپاچی از سیستمعاملهای لینوکس، ویندوز و بسیاری سیستمعاملهای دیگر پشتیبانی میکند.
همچنین میتوان با استفاده از ماژولها و افزونهها، این برنامه را توسعه داد و به سادگی سفارشیسازی کرد. آپاچی را به عنوان پشتیبان LAMP میشناسند که مخفف 4 سیستم محبوب Linux، Apache، MySQL و PHP/Perl است. تقریباً میتوان گفت که آپاچی تمامی سیستمهای مورد استفاده حال حاضر بازار را پشتیبانی میکند. بر اساس آمارهای منتشر شده از سایت نت کرفت حدودا ۶۰ درصد از سایتهای دنیا از آپاچی استفاده میکنند.
وب سرور چیست؟
پیش ازآنکه بگوییم آپاچی چیست لازم است مفهوم وبسرور را تعریف کنیم. منظور از وب سرور، سامانهای است که کار آن پاسخ دادن به درخواستهای مرورگر وب است. این سامانه درخواستها را دریافت میکند و سپس صفحه درخواستی مورد نظر را برای کاربران ارسال میکند. وب سرور نرمافزاری است که از طریق پروتکل انتقال هایپر تکست (HTTP)، فایلها را از یک سرور فیزیکی به مرورگر کاربران ارسال میکند و بدون آن کاربر قادر به دیدن صفحات وب نیست. در ابتداییترین سطح، یک وب سرور به برنامهای گفته میشود که صفحههای وب خواسته شده را در کنار هم قرار میدهد.
یک وب سرور آدرس صفحه (URL) را دریافت میکند و سپس آن را با نام یک فایل (برای درخواستهای استاتیک) ترجمه میکند و آن فایل را از طریق اینترنت به دیسک محلی ارسال میکند. همچنین ممکن است URL دریافتی را به نام یک برنامه (برای درخواستهای دینامیک) تبدیل کند، آن را اجرا کند و در نهایت خروجی این برنامه را به درخواست کننده منتقل کند. اگر به هر دلیلی وب سرور قادر به پاسخگویی، پردازش و تکمیل درخواست نباشد، به جای آن یک پیغام خطا را باز میکند. کلمه وب سرور میتواند به دستگاه (کامپیوتر یا سختافزار)، وب سرور و یا نرمافزاری که درخواستها را دریافت و پاسخها را ارسال میکند تعمیم داده شود.
چرا از وب سرور آپاچی استفاده کنیم؟
امروزه وب سرورهای زیادی وجود دارند که مورد استفاده کاربران در سراسر دنیا قرار میگیرند. از مشهورترین وب سرورهای دنیا میتوان به آپاچی (Apache)، آی آی اس (IIS)، لایت اسپید (LiteSpeed)، لایت تی پی دی (LightTPD) و انجین ایکس (Nginx) اشاره کرد. هرچند آپاچی از تمامی سرورهای دیگر محبوبتر است. محبوبیت آپاچی چند دلیل ساده دارد:
- آپاچی هم برای استفادههای شخصی و هم استفادههای تجاری رایگان است و نیازی به پرداخت هزینهای برای آن نیست.
- این نرمافزار بسیار قابل اطمینان است و امنیت بسیار بالایی دارد. آپاچی به صورت متن باز (اپن سورس) است و کدهای آن برای هرکسی قابل مشاهده است و این به کاربران اجازه میدهد که کدها را تنظیم کنند، بهینهسازی کنند و خطاهای آن را رفع کنند. همچنین افراد حرفهای میتوانند ویژگیهای جدیدی به آن اضافه کنند.
- وب سرور آپاچی میتواند تقریباً برای تمامی سایتها مورد استفاده قرار بگیرد (چه سایتهای کوچک با تعداد صفحات محدود و چه سایتهایی با هزاران صفحه متفاوت).
- متداولترین دلیل برای استفاده از آپاچی، پرونده htaccess. است که طراحان حرفهای سیستم عامل لینوکس از آن بهره میبرند. برنامه نویسان میتوانند با اعمال تغییراتی در این پرونده که در هر شاخهای قابل اضافه شدن است، دستورات ویژه این شاخه را به سرور بدهند.
مزایای آپاچی
همانطور که گفته شد، آپاچی حدود ۲۵ سال است که به عنوان محبوبترین وب سرور دنیا فعالیت میکند و هنوز وب سرور دیگری نتوانسته به رقابت با آن بپردازد. از جمله مهمترین مزایای آپاچی میتوان به موارد زیر اشاره کرد:
- با توجه به آنکه متن باز است، کد منبع آن برای همه افراد به صورت رایگان در دسترس است و برای استفاده از آنها نیاز به هیچ مجوزی نیست
- آپاچی قابلیت اصلاح شدن دارد و خطاهای آن را میتوان برطرف کرد
- میتوان انواع ماژولها و ویژگیهای جدید را به آن اضافه کرد. این قابلیت، آپاچی را در میان متخصصان برنامهنویسی بسیار محبوب کرده است
- آپاچی یک وب سرور بسیار قابل اطمینان است و عملکردی عالی دارد
- در صورت اعمال هرگونه تغییری در آن، میتوان بلافاصله آن را ثبت کرد و نیازی به راهاندازی مجدد آن نیست
- آپاچی تقریباً تمام سیستمعاملهای مطرح جهان مانند ویندوز و لینوکس را پشتیبانی میکند
- به صورت منظم بهروزرسانی و نگهداری میشود
- به راحتی قابل نصب است
- بسیار انعطافپذیر است
- با استفاده از آپاچی میتوانید به صورت همزمان چندین سایت را اجرا کنید. به عبارتی دیگر میتواند میزبانی مجازی ایجاد کنید.
- پیکربندی بسیار سادهای دارد
- با انواع CMS ها مانند وردپرس و جوملا سازگار است
- برای افراد مبتدی و تازهکار بسیار مناسبتر از سایر وب سرورها است
- آپاچی از نظر مستندات به شکلی عالی مستند شده است و به صورت مرتب بهروز میشود
- مقیاسپذیری آپاچی عالی است و میتواند هزاران سایت را اداره کند و مشکلی با محتوای استاتیک و دینامیک ندارد
- آپاچی قدیمیترین وب سرور دنیا است و از گستردگی بسیار زیادی برخوردار است. همچنین دارای یک جامعه کاربر قوی و پشتیبانی قدرتمندی است که در صورت بروز هرگونه مشکلی پاسخگو هستند.
- این وب سرور دارای سرعت بسیار مناسبی است
معایب آپاچی
هرچند که این وب سرور مزایا، قابلیتها و محبوبیت بسیاری زیادی دارد، اما بدون عیب نیست. مهمترین معایب آپاچی را میتواند موارد زیر دانست:
- یکی از بارزترین معایب این وب سرور قابلیت تغییر تنظیمات آن است. همانطور که گفته شد آپاچی متن باز (Open Source) است و در صورتی که تغییرات در کدهای آن به درستی انجام نشود، ممکن است برای امنیت آن تهدیدی جدی باشد.
- زمانی که در آپاچی پروتکلهای شخصی ایجاد میکنیم، خطاها و بدافزارهای جدیدی نیز ایجاد میشوند و برای از بین بردن آنها نیاز به Debuggers خواهد بود.
- این وب سرور شدیداً نیاز به بهروزرسانی مستمر دارد و باید بدون وقفه آپدیت شود.
- گاهی در سایتهایی که ترافیک بسیار سنگینی دارند دچار مشکلات عملکرد میشود.
- تنظیمات پیکربندی بیش از حد میتواند منجر به آسیبپذیریهای امنیتی شود.
- وب سرور آپاچی یک سرور مبتنی بر فرآیند است. بدین معنی که اتصالات همزمان نیازمند رشتههای جداگانهای هستند که ممکن است باعث ایجاد هزینههای سربار شوند.
نتیجهگیری:
در یک تحقیق در سال 2014 آمار استفاده از محبوبترین وب سرورها به صورت زیر است:
- Apache: 60.6%
- NGINX: 20.6%
- IIS: 13.9%
- LiteSpeed: 2.0%
هر چند که در این 5 سال درصدها تغییراتی داشتهاند اما قطعاً آپاچی همچنان یکهتاز است و با توجه به مزایای مهمی که دارد به دیگر وب سرورها ترجیح داده میشود.
در این مقاله توضیح دادیم که آپاچی چیست . آپاچی به شما اجازه میدهد یک سایت را به صوت کاملاً امن و بدون هیچگونه دردسری اجرا کنید. این وب سرور برای اکثر سایتهای کوچک و متوسط مناسب است. آپاچی همچنین سازگاری بسیار خوبی با سیستم مدیرت محتوای وردپرس دارد و همین مسئله آن را در میان کاربران وردپرس بسیار محبوب کرده است. آپاچی همچنین با سیستمهای مدیریت محتوای دیگری مثل جوملا، دروپال و ویبلی کاملاً سازگار است.