Movatterモバイル変換


[0]ホーム

URL:


Перейти до вмісту
Вікіпедія
Пошук

Apache HTTP Server

Очікує на перевірку
Матеріал з Вікіпедії — вільної енциклопедії.

Статус версії сторінки

На цій сторінці показано неперевірені зміни

У Вікіпедії є статті про інші значення цього терміна:Апачі (значення).
Apache HTTP Server
ТипВебсервер
АвторRobert McCoold Редагувати інформацію у Вікіданих
РозробникApache Software Foundation
Стабільний випуск2.4.23 (4 липня2016; 9 років тому (2016-07-04))
Операційна системаКрос-платформовий
Мова програмуванняC[1][2][…] Редагувати інформацію у Вікіданих
ЛіцензіяApache Software License
Репозиторійgithub.com/apache/httpd
Вебсайтhttpd.apache.org

Apache HTTP-сервер (вимовляється/ə.ˈpæ.ʧi/) —відкритийвебсерверІнтернет дляUNIX-подібних,Microsoft Windows,Novell NetWare таінших операційних систем.

Apache розроблюється та підтримується спільнотою розробниківвідкритого програмного забезпечення під керівництвомApache Software Foundation.

В 1996 році Apache обійшовNCSA HTTPd із того часу є найбільш популярнимвебсервером у світі. Станом на червень 2013 року Apache встановлений на 53.34 % (358 974 045 серверів) для порівняння на другому місціMicrosoft IIS їхня частка 17.22 % (115 920 681 сервер).[4]

Історія та назва

[ред. |ред. код]

Сервер 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 зіграв ключову роль у початковому зростаннівсесвітньої павутини, і продовжує бути найпопулярнішим у світі вебсервером,де-факто платформою, на яку орієнтуються інші вебсервери.

Відповідно до статистики[5] 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 FoundationLinux,FreeBSDГібридна мультипроцесорна-багатониткова модель. Зберігаючи стабільність мультипроцесорних рішень, вона дозволяє обслуговувати велику кількість клієнтів з мінімальним використанням ресурсів.Середньо-навантажені вебсервери.Стабільний.
pre-fork[Архівовано 13 березня 2012 уWayback Machine.]Apache Software FoundationLinux,FreeBSDMPM, заснована на попередньому створенні окремих процесів, не використовує механізм threads.Велика безпека і стабільність за рахунок ізоляції процесів один від одного, збереження сумісності зі старими бібліотеками, що не підтримують threads.Стабільний.
perchild[Архівовано 23 лютого 2012 уWayback Machine.]Apache Software FoundationLinuxГібридна модель, з фіксованою кількістю процесів.На високо навантажених серверах, можливість запуску дочірніх процесів використовуючи інше ім'я користувача для підвищення безпеки.У розробці, нестабільний.
netware[Архівовано 15 січня 2012 уWayback Machine.]Apache Software FoundationNovell NetWareБагатониткова модель, оптимізована для роботи в середовищі NetWare.СервериNovell NetWareСтабільний.
winnt[Архівовано 4 березня 2012 уWayback Machine.]Apache Software FoundationMicrosoft WindowsБагатониткова модель, створена для операційної системиMicrosoft Windows.Сервери під керуваннямWindows Server.Стабільний.
Apache-ITK[Архівовано 7 березня 2012 уWayback Machine.]Steinar H. GundersonLinux,FreeBSDMPM, заснована на моделі prefork. Дозволяє запуск кожного віртуального хоста під окремимиUID таGID.Хостингові сервери, сервери, критичні до ізоляції користувачів і обліку ресурсів.Стабільний.
peruser[Архівовано 13 вересня 2012 уWayback Machine.]Sean Gabriel HeacockLinux,FreeBSDМодель, створена на базі MPM perchild. Дозволяє запуск кожного віртуального хоста під окремимиUID таGID. Не використовує нитки.Забезпечення підвищеної безпеки, робота з бібліотеками, не підтримуються нитки.Стабільна версія від4 жовтня2007 року, експериментальна — від10 вересня2009 року.

Примітки

[ред. |ред. код]
  1. http://linuxdocs.org/HOWTOs/Apache-Overview-HOWTO-12.html
  2. https://github.com/apache/httpd
  3. The apache Open Source Project on Open Hub: Languages Page — 2006.
  4. Статистика вживаності вебсерверів. Архіворигіналу за 6 серпня 2013. Процитовано 5 серпня 2013. Статистика вживаності вебсерверів(англ.)
  5. June 2008 Web Server Survey. Архіворигіналу за 28 липня 2008. Процитовано 28 липня 2008.

Див. також

[ред. |ред. код]

Посилання

[ред. |ред. код]
Основні проєкти
ActiveMQ · Airflow  · Ant · Apache HTTP Server · APR · Apache Beam  · Bloodhound  · Buildr · Camel · Cassandra · Cayenne · Chemistry  · CloudStack  · Cocoon · Commons · Cordova  · CouchDB · CXF · Deltacloud · Derby  · Directory · Excalibur · Felix · Flex  · Forrest · Geronimo · Gump · Hadoop · iBATIS  · Isis  · Jackrabbit · James · Lenya · Lucene · Maven · mod_perl · MyFaces · OFBiz  · OpenEJB · OpenJPA · OpenNLP  · OpenOffice · POI · Qpid · Rave · Roller · Sling · SpamAssassin  · Spark  · Sqoop · Stratos  · Struts  · Subversion  · Tapestry  · Tika · Tomcat · Traffic Server · Tuscany · Velocity · Wicket · XMLBeans[en]
Інші проєкти
Підпроєкти
BCEL · BSF · Cactus · Chainsaw · HBase · JMeter · Xerces · Batik · FOP · Log4j · XAP · River · ServiceMix · Log4Net · Abdera · Ivy · ODE · JSPWiki · Wink · Solr
Інкубатор
Колишні проєкти (Attic)
Beehive · Harmony · HiveMind · Slide · Shale  · Wave
Ліцензія:Apache License · Сайт:http://apache.org/
Отримано зhttps://uk.wikipedia.org/w/index.php?title=Apache_HTTP_Server&oldid=46320582
Категорії:
Приховані категорії:

[8]ページ先頭

©2009-2026 Movatter.jp