وب‌سرور آپاچی

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو
آپاچی اچ‌تی‌تی‌پی سرور
ASF-logo.svg
نویسنده(های) اصلی Robert McCool
توسعه‌دهنده(ها) بنیاد نرم‌افزار آپاچی
انتشار ابتدایی ۱۹۹۵
انتشار پایدار ۲.۴.۴ / ۲۵ فوریه ۲۰۱۳؛ ۶۶۱ روز پیش
نوشته‌شده به سی
سیستم‌عامل چندسکویی
گونه وب سرور
پروانه اجازه‌نامه آپاچی نسخهٔ ۲.۰
وب‌گاه httpd.apache.org

کارساز وب آپاچی یا سرویس دهندهٔ اچ‌تی‌تی‌پی آپاچی که بیشتر آن را آپاچی می‌نامند، یک برنامه‌ی کارساز وب است که نقش کلیدی در توسعهٔ دنیای وب ایفا می‌کند. در سال ۲۰۰۹ آپاچی اولین برنامهٔ کارساز وب بود که حدود ۱۰۰ میلیون وب‌گاه به کمک آن سرویس‌دهی می‌کردند. آپاچی به‌طور معمول در محیط‌های بر پایه یونیکس و لینوکس استفاده می‌شود.

آپاچی توسط انجمن برنامه‌نویسان آزاد توسعه و پشتیبانی می‌شود و تحت حمایت بنیاد نرم‌افزاری آپاچی قرار دارد.

این برنامه برای طیف بسیار وسیعی از سیستم‌های عامل قابل استفاده است. از جملهٔ آن‌ها: یونیکس، گنو[نیازمند منبع]، فری بی‌اس‌دی, لینوکس، سولاریس, NovelNetware, آمیگااُاس, مک‌ااس‌اکس, ویندوز,OS/2 و eComStation.

این برنامه تحت مجور آپاچی بوده و به‌صورت متن‌باز است. و از سال ۱۹۹۶ تاکنون پرکاربردترین برنامه در حوزهٔ خود است. در فوریه ۲۰۱۱ بیش از ۵۹٫۱۳٪ وب‌گاه‌ها را پشتیبانی می‌کرد. و در همین تاریخ، سرویس‌دهی ۶۶٫۶۲٪ از میلیون‌ها سایتِ پرترافیک، توسط آپاچی انجام می‌شد.[نیازمند منبع]

بسیاری از ویژگی‌ها و خدمات آپاچی به صورت ویژگی درونی است.

خصوصیات و ویژگی ها[ویرایش]

ویژگی‌های این برنامه بسیار گسترده است؛ از پشتیبانی زبان‌های برنامه‌نویسی سمت سرور گرفته تا تصدیق هویت.

تعدادی از زبان های برنامه‌نویسی قابل پشتیبانی عبارتند از: perl, python, TCL و PHP.

ماژول‌های تصدیق هویت شامل: mod_access, mod_auth,... . پشتیبانی از SSL, TLS.

پشتیبانی از URL rewiter یا بازنویسی URL.

پشتیبانی از ثبت وقایع در فایل به‌صورت اختصاصی.

پشتیبانی از روش‌های فشرده‌سازی معمول و عمومی و نیز قابل توسعه همچون mod_gzip که برای کاهش حجم صفحات وب که در اینترنت تبادل پیدا می‌کنند استفاده می‌شود.

modSecurity که یک برنامهٔ متن‌باز برای تشخیص و جلوگیری از نفوذ به برنامه‌های تحت وب است.

وقایع ثبت شدهٔ آپاچی می‌تواند توسط اسکریپت‌های رایگاه همچون AWStats, W3Perl یا Visitors مورد تحلیل قرار گیرد و توسط مرورگر در اختیار تحلیل‌گر بازدید قرار گیرد.

VirtualHost قابلیتی را فراهم می‌کند که یک نسخه از آپاچی برای وب سایت‌های بسیاری مورد استفاده قرار گیرد. به عنوان مثال: www.example.com , www.test.com , test47.testserver.test.com.

قابلیت تنظیم و اختصاصی نمودن انواع پیام های خطا.

تصدیق هویت براساس بانک اطلاعاتی.

همچنین آپاچی توسط چندین برنامهٔ رابط گرافیکی پشتیبانی می‌شود.

contentnegotiation ارایهٔ چند محتوای متفاوت برای یک آدرس. برای این استفاده می‌شود که چند سند مختلف برای یک آدرس ارسال شود. کاربرد آن مثلاً در زمانی است که IE4 از فرمت PNG پشتیبانی نمی‌کند و به جای آن شما نسخهٔ gif را برای مرورگر ارسال می‌کنید. یا مثلاً براساس UserAgent نسخهٔ موبایل برای مرورگر ارسال می‌کنید.

سطح عملکرد و کارایی[ویرایش]

اگر چه هدف طراحی آپاچی کاراییی بالا نبود ولی این برنامه با سرویس‌دهندگان پرسرعت وب قابل مقایسه است.

از تکنیک MultiProcess , MultiThreading پشتیبانی می‌کند.

در مراحلی از توسعه آپاچی، آن را از ابتدا و از صفر کد زده‌اند. پشتیبانی از IPv6.

کارساز اچ‌تی‌تی‌پی آپاچی (به انگلیسی: Apache HTTP Server) یک برنامهٔ اجرایی HTTP Server در محیط کامپیوتری است که به دلیل برخی از امکانات ویژه‌ای که دارد به سرعت در حال گسترش است. می‌توان گفت که آپاچی برای برنامه‌نویسان حرفه‌ای برنامه‌ای فوق‌العاده‌است که به لحاظ امنیتی نیز به حفاظت سرورها و برنامه‌های موجود در آن‌ها کمک می‌کند.

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

کاربردها[ویرایش]

یکی از کاربردی‌ترین موارد مربوط به آپاچی برای برنامه‌نویسان استفاده از پرونده (فایل htaccess) است. برنامه‌نویس می‌تواند با اعمال تغییراتی در این پرونده که بر هر شاخه‌ای قابل اضافه شدن است دستورات ویژهٔ آن شاخه را به سرور ارایه دهد. برای نمونه اگر بخواهد که در صورت وارد کردن نشانی aa.html نام آن باقی بماند ولی در واقع پرونده main.php?page=bb اجرا شود به‌وسیلهٔ این پرونده قادر به اعمال دستورش خواهد بود.

ساختار[ویرایش]

پیوند به بیرون[ویرایش]