Apache HTTP-сервер (вимовляється /ə.ˈpæ.ʧi/) — відкритий вебсервер Інтернет для UNIX-подібних, Microsoft Windows, Novell NetWare та інших операційних систем.
Тип | Вебсервер |
---|---|
Автор | d |
Розробник | Apache Software Foundation |
Стабільний випуск | 2.4.23 (4 липня 2016 ) |
Операційна система | Крос-платформовий |
Мова програмування | C[1][2][…] |
Ліцензія | Apache Software License |
Репозиторій | https://github.com/apache/httpd, https://svn.apache.org/viewvc/httpd/httpd/ |
Вебсайт | httpd.apache.org |
|
Apache розроблюється та підтримується спільнотою розробників відкритого програмного забезпечення під керівництвом Apache Software Foundation.
В 1996 році Apache обійшов NCSA HTTPd із того часу є найбільш популярним вебсервером у світі. Станом на червень 2013 року Apache встановлений на 53.34 % (358 974 045 серверів) для порівняння на другому місці Microsoft IIS їхня частка 17.22 % (115 920 681 сервер).
Історія та назва
Сервер Apache створений на початку 1995 року співтовариством незалежних розробників «Apache Group», члени якої у свій час брали участь у проєкті з побудови перших Web-серверів у NCSA (National Center for Supercomputer Applications, USA). «Apache Group» пропонує Web-сервери, сумісні з будь-якою UNIX-системою, установленої на будь-якій апаратній платформі. Сервер перенесений і на інші операційні системи. Так, уже зараз Apache Web-сервер доступний для (OS/2), UNIX-платформ, Windows 2000 та ін.
Web-сервер Apache, як і всі інші Web-сервери, базується на ідеях і частині коду, реалізованих у першому по-справжньому популярному Web-Сервері — NCSA httpd 1.3.
Є два пояснення назви проєкту. Згідно з Apache Foundation, назву проєкту було вибрано з поваги до корінного племені американського континенту апачів, що були відомі за свою витривалість та військову майстерність. Проте, перший FAQ на вебсайті проєкту Apache Server з 1996 до 2001 стверджував, що «назва „Apache“ походить від абревіатури „А PAtCHy server“, що дослівно перекладається як „залатаний сервер“ — сервер, у код якого внесений цілий ряд серйозних змін.» Перше пояснення було підтверджено на Конференції Apache і в інтерв'ю 2000 року з Браяном Беглендорфом, який, тим не менш, спростував це твердження в інтерв'ю 2007 року, заявляючи, що «сервер Apache не названий на честь племені Джеронімо».
Версія 2 вебсервера Apache була істотним переписом великої частини коду програми версії 1.x, з сильним нахилом на подальшу модульність та портативність. Версія 2.2 має гнучкіший API авторизації. Вона також включає поліпшені модулі кешу й проксі сервера.
Можливості
Web-сервер Apache є самостійним, некомерційним, вільно розповсюджуваним продуктом. Продукт підтримує безліч можливостей, багато з яких реалізовані як скомпільовані модулі, які розширюють основні функціональні можливості. Вони різняться від серверної підтримки мов програмування до схем аутентифікації. Існують інтерфейси для підтримки мов програмування Perl, Python, Tcl і PHP.
Популярні методи стискування на Apache включають зовнішній модуль mod_gzip, створений для зменшення розміру вебсторінок, переданих по HTTP.
Функції віртуального хостингу дозволяють одній інсталяції Apache обслуговувати різні вебсайти. Наприклад, одна машина, з однією інсталяцією Apache може одночасно містити www.example.com, www.test.com, test47.test-server.test.com і так далі.
Використання
Apache передусім використовується для передачі через HTTP статичних та динамічних вебсторінок у всесвітній павутині. Багато вебзастосунків спроєктовано, зважаючи на середовище і можливості, які надає цей вебсервер.
Продукт може працювати як кешувальний проксі-сервер, що дозволяє істотно підвищити продуктивність роботи користувачів локальної мережі при роботі з документами, розташованими в Інтернет. Можна задавати такі параметри та налаштування проксі-сервера:
- типи файлів, які необхідно кешувати або навпаки, не включати в кеш;
- максимальний обсяг дискового простору, відведений під кеш;
- періодичний перегляд і індексування бази даних кешу з метою вивільнення дискового простору шляхом видалення застарілих об'єктів.
Apache зіграв ключову роль у початковому зростанні всесвітньої павутини, і продовжує бути найпопулярнішим у світі вебсервером, де-факто платформою, на яку орієнтуються інші вебсервери.
Відповідно до статистики Netcaft за червень 2008 року, Apache є найпоширенішим серверним програмним забезпеченням в Мережі: на цей вебсервер припадала частка близько 49 % відповідного сегменту ринку (майже 85 мільйонів сайтів). Друге місце за популярністю займають програмні платформи Microsoft — 35,4 % (61 мільйон сайтів).
Архітектура
Ядро
Ядро Apache включає в себе основні функціональні можливості, такі як обробка конфігураційних файлів, протокол HTTP і система завантаження модулів. Ядро (на відміну від модулів) повністю розробляється Apache Software Foundation, без участі сторонніх програмістів.
Теоретично, ядро apache може функціонувати в чистому вигляді, без використання модулів. Однак, функціональність такого рішення вкрай обмежена.
Ядро Apache повністю написано мовою програмування C.
Система конфігурації
Система конфігурації Apache заснована на текстових конфігураційних файлах. Має три умовних рівні конфігурації:
- Конфігурація сервера (httpd.conf).
- Конфігурація віртуального хосту (httpd.conf з версії 2.2 extra/httpd-vhosts.conf).
- Конфігурація рівня директорії (.htaccess).
Має власну мову конфігураційних файлів, заснований на блоках директив. Практично всі параметри ядра можуть бути змінені через конфігураційні файли. Більша частина модулів має власні параметри.
Частина модулів використовує у своїй роботі конфігураційні файли операційної системи (наприклад /etc/passwd і /etc/hosts).
Крім цього, параметри можуть бути задані через ключі командного рядка.
Мультипроцесувальні моделі (MPM)
Для вебсервера Apache існує безліч моделей симетричного мультипроцесування.
Ось основні з них:
Назва | Розробник | Підтримувані OS | Опис | Призначення | Статус |
---|---|---|---|---|---|
worker [ 4 березня 2012 у Wayback Machine.] | Apache Software Foundation | Linux, FreeBSD | Гібридна мультипроцесорна-багатониткова модель. Зберігаючи стабільність мультипроцесорних рішень, вона дозволяє обслуговувати велику кількість клієнтів з мінімальним використанням ресурсів. | Середньо-навантажені вебсервери. | Стабільний. |
pre-fork [ 13 березня 2012 у Wayback Machine.] | Apache Software Foundation | Linux, FreeBSD | MPM, заснована на попередньому створенні окремих процесів, не використовує механізм threads. | Велика безпека і стабільність за рахунок ізоляції процесів один від одного, збереження сумісності зі старими бібліотеками, що не підтримують threads. | Стабільний. |
perchild [ 23 лютого 2012 у Wayback Machine.] | Apache Software Foundation | Linux | Гібридна модель, з фіксованою кількістю процесів. | На високо навантажених серверах, можливість запуску дочірніх процесів використовуючи інше ім'я користувача для підвищення безпеки. | У розробці, нестабільний. |
netware [ 15 січня 2012 у Wayback Machine.] | Apache Software Foundation | Novell NetWare | Багатониткова модель, оптимізована для роботи в середовищі NetWare. | Сервери Novell NetWare | Стабільний. |
winnt [ 4 березня 2012 у Wayback Machine.] | Apache Software Foundation | Microsoft Windows | Багатониткова модель, створена для операційної системи Microsoft Windows. | Сервери під керуванням Windows Server. | Стабільний. |
Apache-ITK [ 7 березня 2012 у Wayback Machine.] | Steinar H. Gunderson | Linux, FreeBSD | MPM, заснована на моделі prefork. Дозволяє запуск кожного віртуального хоста під окремими UID та GID. | Хостингові сервери, сервери, критичні до ізоляції користувачів і обліку ресурсів. | Стабільний. |
peruser [ 13 вересня 2012 у Wayback Machine.] | Sean Gabriel Heacock | Linux, FreeBSD | Модель, створена на базі MPM perchild. Дозволяє запуск кожного віртуального хоста під окремими UID та GID. Не використовує нитки. | Забезпечення підвищеної безпеки, робота з бібліотеками, не підтримуються нитки. | Стабільна версія від 4 жовтня 2007 року, експериментальна — від 10 вересня 2009 року. |
Примітки
- http://linuxdocs.org/HOWTOs/Apache-Overview-HOWTO-12.html
- https://github.com/apache/httpd
- The apache Open Source Project on Open Hub: Languages Page — 2006.
- [. Архів оригіналу за 6 серпня 2013. Процитовано 5 серпня 2013. Статистика вживаності вебсерверів(англ.)]
- . Архів оригіналу за 28 липня 2008. Процитовано 28 липня 2008.
Див. також
Посилання
- Офіційний майданчик тенет Apache
- Он-лайн новини Apache [ 23 жовтня 2006 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
U Vikipediyi ye statti pro inshi znachennya cogo termina Apachi znachennya Apache HTTP server vimovlyayetsya e ˈpae ʧi vidkritij vebserver Internet dlya UNIX podibnih Microsoft Windows Novell NetWare ta inshih operacijnih sistem Apache HTTP ServerTip VebserverAvtor dRozrobnik Apache Software FoundationStabilnij vipusk 2 4 23 4 lipnya 2016 7 rokiv tomu 2016 07 04 Operacijna sistema Kros platformovijMova programuvannya C 1 2 Licenziya Apache Software LicenseRepozitorij https github com apache httpd https svn apache org viewvc httpd httpd Vebsajt httpd apache org Mediafajli u Vikishovishi Apache rozroblyuyetsya ta pidtrimuyetsya spilnotoyu rozrobnikiv vidkritogo programnogo zabezpechennya pid kerivnictvom Apache Software Foundation V 1996 roci Apache obijshov NCSA HTTPd iz togo chasu ye najbilsh populyarnim vebserverom u sviti Stanom na cherven 2013 roku Apache vstanovlenij na 53 34 358 974 045 serveriv dlya porivnyannya na drugomu misci Microsoft IIS yihnya chastka 17 22 115 920 681 server Istoriya ta nazvaServer Apache stvorenij na pochatku 1995 roku spivtovaristvom nezalezhnih rozrobnikiv Apache Group chleni yakoyi u svij chas brali uchast u proyekti z pobudovi pershih Web serveriv u NCSA National Center for Supercomputer Applications USA Apache Group proponuye Web serveri sumisni z bud yakoyu UNIX sistemoyu ustanovlenoyi na bud yakij aparatnij platformi Server perenesenij i na inshi operacijni sistemi Tak uzhe zaraz Apache Web server dostupnij dlya OS 2 UNIX platform Windows 2000 ta in Web server Apache yak i vsi inshi Web serveri bazuyetsya na ideyah i chastini kodu realizovanih u pershomu po spravzhnomu populyarnomu Web Serveri NCSA httpd 1 3 Ye dva poyasnennya nazvi proyektu Zgidno z Apache Foundation nazvu proyektu bulo vibrano z povagi do korinnogo plemeni amerikanskogo kontinentu apachiv sho buli vidomi za svoyu vitrivalist ta vijskovu majsternist Prote pershij FAQ na vebsajti proyektu Apache Server z 1996 do 2001 stverdzhuvav sho nazva Apache pohodit vid abreviaturi A PAtCHy server sho doslivno perekladayetsya yak zalatanij server server u kod yakogo vnesenij cilij ryad serjoznih zmin Pershe poyasnennya bulo pidtverdzheno na Konferenciyi Apache i v interv yu 2000 roku z Brayanom Beglendorfom yakij tim ne mensh sprostuvav ce tverdzhennya v interv yu 2007 roku zayavlyayuchi sho server Apache ne nazvanij na chest plemeni Dzheronimo Versiya 2 vebservera Apache bula istotnim perepisom velikoyi chastini kodu programi versiyi 1 x z silnim nahilom na podalshu modulnist ta portativnist Versiya 2 2 maye gnuchkishij API avtorizaciyi Vona takozh vklyuchaye polipsheni moduli keshu j proksi servera MozhlivostiWeb server Apache ye samostijnim nekomercijnim vilno rozpovsyudzhuvanim produktom Produkt pidtrimuye bezlich mozhlivostej bagato z yakih realizovani yak skompilovani moduli yaki rozshiryuyut osnovni funkcionalni mozhlivosti Voni riznyatsya vid servernoyi pidtrimki mov programuvannya do shem autentifikaciyi Isnuyut interfejsi dlya pidtrimki mov programuvannya Perl Python Tcl i PHP Populyarni metodi stiskuvannya na Apache vklyuchayut zovnishnij modul mod gzip stvorenij dlya zmenshennya rozmiru vebstorinok peredanih po HTTP Funkciyi virtualnogo hostingu dozvolyayut odnij instalyaciyi Apache obslugovuvati rizni vebsajti Napriklad odna mashina z odniyeyu instalyaciyeyu Apache mozhe odnochasno mistiti www example com www test com test47 test server test com i tak dali VikoristannyaApache peredusim vikoristovuyetsya dlya peredachi cherez HTTP statichnih ta dinamichnih vebstorinok u vsesvitnij pavutini Bagato vebzastosunkiv sproyektovano zvazhayuchi na seredovishe i mozhlivosti yaki nadaye cej vebserver Produkt mozhe pracyuvati yak keshuvalnij proksi server sho dozvolyaye istotno pidvishiti produktivnist roboti koristuvachiv lokalnoyi merezhi pri roboti z dokumentami roztashovanimi v Internet Mozhna zadavati taki parametri ta nalashtuvannya proksi servera tipi fajliv yaki neobhidno keshuvati abo navpaki ne vklyuchati v kesh maksimalnij obsyag diskovogo prostoru vidvedenij pid kesh periodichnij pereglyad i indeksuvannya bazi danih keshu z metoyu vivilnennya diskovogo prostoru shlyahom vidalennya zastarilih ob yektiv Apache zigrav klyuchovu rol u pochatkovomu zrostanni vsesvitnoyi pavutini i prodovzhuye buti najpopulyarnishim u sviti vebserverom de fakto platformoyu na yaku oriyentuyutsya inshi vebserveri Vidpovidno do statistiki Netcaft za cherven 2008 roku Apache ye najposhirenishim servernim programnim zabezpechennyam v Merezhi na cej vebserver pripadala chastka blizko 49 vidpovidnogo segmentu rinku majzhe 85 miljoniv sajtiv Druge misce za populyarnistyu zajmayut programni platformi Microsoft 35 4 61 miljon sajtiv ArhitekturaYadro Yadro Apache vklyuchaye v sebe osnovni funkcionalni mozhlivosti taki yak obrobka konfiguracijnih fajliv protokol HTTP i sistema zavantazhennya moduliv Yadro na vidminu vid moduliv povnistyu rozroblyayetsya Apache Software Foundation bez uchasti storonnih programistiv Teoretichno yadro apache mozhe funkcionuvati v chistomu viglyadi bez vikoristannya moduliv Odnak funkcionalnist takogo rishennya vkraj obmezhena Yadro Apache povnistyu napisano movoyu programuvannya C Sistema konfiguraciyi Sistema konfiguraciyi Apache zasnovana na tekstovih konfiguracijnih fajlah Maye tri umovnih rivni konfiguraciyi Konfiguraciya servera httpd conf Konfiguraciya virtualnogo hostu httpd conf z versiyi 2 2 extra httpd vhosts conf Konfiguraciya rivnya direktoriyi htaccess Maye vlasnu movu konfiguracijnih fajliv zasnovanij na blokah direktiv Praktichno vsi parametri yadra mozhut buti zmineni cherez konfiguracijni fajli Bilsha chastina moduliv maye vlasni parametri Chastina moduliv vikoristovuye u svoyij roboti konfiguracijni fajli operacijnoyi sistemi napriklad etc passwd i etc hosts Krim cogo parametri mozhut buti zadani cherez klyuchi komandnogo ryadka Multiprocesuvalni modeli MPM Dlya vebservera Apache isnuye bezlich modelej simetrichnogo multiprocesuvannya Os osnovni z nih Nazva Rozrobnik Pidtrimuvani OS Opis Priznachennya Statusworker 4 bereznya 2012 u Wayback Machine Apache Software Foundation Linux FreeBSD Gibridna multiprocesorna bagatonitkova model Zberigayuchi stabilnist multiprocesornih rishen vona dozvolyaye obslugovuvati veliku kilkist kliyentiv z minimalnim vikoristannyam resursiv Seredno navantazheni vebserveri Stabilnij pre fork 13 bereznya 2012 u Wayback Machine Apache Software Foundation Linux FreeBSD MPM zasnovana na poperednomu stvorenni okremih procesiv ne vikoristovuye mehanizm threads Velika bezpeka i stabilnist za rahunok izolyaciyi procesiv odin vid odnogo zberezhennya sumisnosti zi starimi bibliotekami sho ne pidtrimuyut threads Stabilnij perchild 23 lyutogo 2012 u Wayback Machine Apache Software Foundation Linux Gibridna model z fiksovanoyu kilkistyu procesiv Na visoko navantazhenih serverah mozhlivist zapusku dochirnih procesiv vikoristovuyuchi inshe im ya koristuvacha dlya pidvishennya bezpeki U rozrobci nestabilnij netware 15 sichnya 2012 u Wayback Machine Apache Software Foundation Novell NetWare Bagatonitkova model optimizovana dlya roboti v seredovishi NetWare Serveri Novell NetWare Stabilnij winnt 4 bereznya 2012 u Wayback Machine Apache Software Foundation Microsoft Windows Bagatonitkova model stvorena dlya operacijnoyi sistemi Microsoft Windows Serveri pid keruvannyam Windows Server Stabilnij Apache ITK 7 bereznya 2012 u Wayback Machine Steinar H Gunderson Linux FreeBSD MPM zasnovana na modeli prefork Dozvolyaye zapusk kozhnogo virtualnogo hosta pid okremimi UID ta GID Hostingovi serveri serveri kritichni do izolyaciyi koristuvachiv i obliku resursiv Stabilnij peruser 13 veresnya 2012 u Wayback Machine Sean Gabriel Heacock Linux FreeBSD Model stvorena na bazi MPM perchild Dozvolyaye zapusk kozhnogo virtualnogo hosta pid okremimi UID ta GID Ne vikoristovuye nitki Zabezpechennya pidvishenoyi bezpeki robota z bibliotekami ne pidtrimuyutsya nitki Stabilna versiya vid 4 zhovtnya 2007 roku eksperimentalna vid 10 veresnya 2009 roku Primitkihttp linuxdocs org HOWTOs Apache Overview HOWTO 12 html https github com apache httpd The apache Open Source Project on Open Hub Languages Page 2006 d Track Q124688 Arhiv originalu za 6 serpnya 2013 Procitovano 5 serpnya 2013 Statistika vzhivanosti vebserveriv angl Arhiv originalu za 28 lipnya 2008 Procitovano 28 lipnya 2008 Div takozh htpasswd ta htaccess Apache Software Foundation Vebserver Mod rewrite vebserver Nginx Apache TomEEPosilannyaOficijnij majdanchik tenet Apache On lajn novini Apache 23 zhovtnya 2006 u Wayback Machine