Apache چیست؟

Apache چیست ؟ در این مطلب و مطالب بعدی شما را با وب سرور های معروف آشنا خواهیم نمود.

محبوب‌ترین، رایج‌ترین و البته ارزان‌ترین نرم‌افزار مورد استفاده جهت Handle نمودن Request های وب است که توسط Apache Software Foundation برنامه‌نویسی و پشتیبانی می‌شود و روی هر دو پلتفرم ویندوز و لینوکس قابل‌نصب است (بیشتر بر روی لینوکس/یونیکس مورد استفاده قرار می‌گیرد). این وب سرور به‌صورت رایگان ارائه می‌شود و شاید یکی از دلایل محبوب بودن آن Open Source بودنش است که عدد ۴۳.۷ درصدی کل وب سرورهای دنیا را به خودش اختصاص داده است. وب سرور Apache، به دلیل انواع ماژول امنیتی در حالت پیش‌فرض امن، قابل اعتماد و سریع است، البته تنظیماتی در کانفیگ این وب سرور جهت افزایش این سه خصوصیت قابل انجام است که ما در این مقاله در ارتباط با آن صحبت نمی‌کنیم. همچنین جهت استفاده این وب سرور در محیط‌های مختلف و پشتیبانی از بیشتر زبان‌های برنامه‌نویسی مانند Python، Perl، PHP یا CGI یا …، Extension ها و Module هایی در دسترس است که می‌توان جهت Extend نمودن وب سرور روی آن نصب نمود.

شاید به همین دلیل است که اکثر ارائه‌دهنده‌های خدمات هاستینگ برای وردپرس، Apache را به‌عنوان وب سرور انتخاب نموده‌اند. البته وردپرس بر روی دیگر وب سرورها نیز به‌خوبی اجرا می‌شود.

وب سرور Apache در ۴ نسخه ۱.۳ و ۲.۰ و ۲.۲ و ۲.۴ ارائه شده است. با توجه به Open Source بودن پروژه حتماً می‌بایست نسخه آخر این وب سرور استفاده گردد؛ چراکه برای نسخه‌های قدیمی پشتیبانی از سمت تیم برنامه‌نویس ارائه نمی‌شود.

اگر بخواهیم مقداری حرفه‌ای‌تر به قضیه بپردازیم، لازم است بگوییم Apache پروسه‌های خود را بر روی سرور با نام httpd که مخفف Http daemon است فراخوانی می‌کند. همچنین جهت مدیریت Authenticate ها در این وب سرور از ماژول‌های mod_access، mod_auth، mod_digest و mod_auth_digest استفاده می‌گردد. وظیفه URL rewriting را ماژول mod_rewrite بر عهده دارد و در صورتی که قصد استفاده از پروکسی را داشته باشید، ماژول mod_proxy این کار را برایتان انجام می‌دهد. خدمات Secure Socket Layer یا SSL نیز توسط ماژول mod_ssl ارائه می‌گردد.

این وب سرور از virtual Hosting نیز پشتیبانی می‌نماید، Virtual Hosting به شما اجازه می‌دهد بر روی یک سرور با یک Single IP با کمک سرویس DNS چندین دامنه را هاست کنید.

مشکل Apache:

مشکلی که در وب سرور آپاچی دیده می‌شود این است که این وب سرور در ترافیک‌های بالا منابع زیادی از سرور اشغال می‌کند و کل سرور را با اختلال و قطعی مواجه می‌کند. در واقع این مشکل مربوط به ساختار آپاچی است، بدین صورت که برای هر کانکشن یک فرآیند (پروسس) ایجاد می‌کند بنابراین با توجه به اینکه هرکدام از این پروسس ها Ram و CPU نیاز دارند، عملکرد سرور تحت تأثیر قرار خواهد گرفت. وب سرور آپاچی به‌صورت process-based تعبیه شده و به همین دلیل است که زمانی که سایت شما ترافیک و پروسس‌هایی بالایی دارد، سایت از سمت تأمین کننده‌ هاست غیرفعال و پیشنهاد ارتقاء به سرور مجازی یا اختصاصی دریافت می‌کنید.

راه‌حل:

می‌توان از پروکسی معکوس (apache+nginx) در مقابل آپاچی استفاده کرد. بدین صورت که محتواهای ایستا یا استاتیک مثل (images, css, js, html) توسط پروکسی اجرا شود و آپاچی تنها درخواست‌های مربوط به php را هندل کند. البته به دلیل پیچیدگی در راه‌اندازی این قابلیت، شرکت‌های هاستینگ کمی هستند که از آن استفاده می‌کنند. 

فایل htaccess:

قابلیت دیگری که در این وب سرور وجود دارد، وجود فایلی با نام.htaccess است که می‌تواند در هر شاخه/پوشه‌ای از هاست شما که برای Apache قابل دسترس است، ایجاد شده و تنظیماتی ازجمله محدود نمودن دسترسی IP ها به آن شاخه، URL Filtering، URL Redirecting و قرار دادن Authenticate برای آن شاخه، تنظیمات Cache، تنظیمات Error Handling، تنظیمات ساعت جهانی و ده‌ها تنظیم دیگر را در اختیارتان بگذارد.

 

منبع : مجله خبری هاست ایران

فیسبوک توییتر گوگل + لینکداین تلگرام واتس اپ کلوب

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

31 − 22 =