Зміст
Apache-потужний сервер, назва якого походить від англійської фрази, пов`язаної з назвою племені північноамериканських індіанців апачів. Серед російських користувачів має поширену назву " Апач». Це програмне забезпечення з відкритим кодом з ліцензією GPL. Одним з найбільших переваг його є кроссплатформенний сервер, тобто він може працювати з різними операційними системами, підтримуючи відмінну продуктивність.
З 1996 року - це найпопулярніший сервер у світі завдяки його стабільності та безпеці. "Апач" розробляється спільнотою користувачів-розробників, яка працює під керівництвом Apache Software Foundation.
Історія Apache

В березні 1989 року Тім Бернерс Лі, англійський вчений, що працює в CERN (Швейцарія), запропонував новий спосіб управління величезною кількістю інформації в проектах CERN. У той час ніхто не знав, що таке Apache. Первинна розробка мережі документів з гіперпосиланнями, як їх назвав Тед Нельсон в 1965 році, призвела до створення WWW-першого програмне забезпечення, яке вийшло в листопаді 1990 року під назвою World Wide Web, з веб-браузером, графічним інтерфейсом і редактором WYSIWYG. Через Два роки у списку серверів WWW було лише близько тридцяти записів, серед яких HTTPs NCSA.
Справжня історія " Апач» починається в березні 1995 року з випуском Apache 0.2 на основі сервера NCSA HTTPD 1.3. Багатьом користувачам цікаво знати, що таке Apache сьогодні і що програма представляла з себе в перші місяці свого існування. Це був лише набір редагувань, застосованих до сервера NCSA. Далі Роберт Тау випустив Shambhala 0.1 з API для модулів, які виявилися дуже успішними.
Найбільшими віхами проекту була повна відповідність стандарту HTTP 1.1, включеному в квітні 1997 року в версію 1.2. У цю версію вже була включена платформа Windows NT, яка стартувала в липні 1997 року. Об`єднання файлів конфігурації було реалізовано у випуску 1.3.3.
Apache Group відповідає за еволюцію веб-сервера та конкретні рішення щодо розробки. Цю групу слід відрізняти від розробників ядра-Core group. Добровільний характер більшості розробників робить малоймовірним те, що всі вони одночасно активні в " Апач», тому ядро відповідає за постійну працездатність. Загалом, рішення, які повинні приймати розробники, належать до ядра і обмежуються голосуванням за включення коду. З іншого боку, вони, як правило, мають право на запис у сховище CVS, тому служать воротами для коду, забезпечуючи його правильність та якість.
Мінімальні вимоги та переваги
Apache отримав широке визнання в мережі, з 1996 року він є найбільш часто використовуваним HTTP-сервером. Досяг своєї максимальної частки ринку в 2005 році, коли сервер використовувався на 70 % сайтів у всьому світі. В останні роки його частка на ринку скоротилася. Примітно те, що для Apache такий спад не свідчить про непопулярність і деградацію технології.
Мінімальні вимоги для експлуатації:
- Процесор-Pentium.
- Оперативна пам`ять - 64 Мб.
- ОС-Microsoft Windows, GNU / Linux.
- Розмір установки-50 Мб.
Перевага:
- Модульна конструкція.
- Відкритий вихідний код.
- Мультиплатформна конструкція.
- Розтяжність.
- Популярність - легко отримати допомогу і підтримку.
Архітектура сервера

Модульний сервер "Апач" складається з основного розділу і різних модулів, що надають більшу частину базових функцій. Деякі з цих модулів:
- mod_ssl-безпечний зв`язок через TLS;
- mod_rewrite-перезапис адреси, зазвичай використовується для перетворення динамічних сторінок, таких як php, у статичні, щоб обдурити пошукові системи щодо того, де вони були розроблені;
- mod_dav - підтримка протоколу WebDAV (RFC 2518);
- mod_deflate-алгоритм стиснення прозорий, коли вміст надсилається клієнту;
- mod_auth_ldap-дозволяє користувачам автентифікуватися на сервері LDAP;
- mod_proxy_ajp-з`єднувач для зв`язку з Jakarta Tomcat динамічних сторінок в Java (сервлети і JSP).
Базовий сервер може бути розширений за рахунок включення зовнішніх модулів, серед яких:
- mod_cband-управління трафіком і обмеження смуги пропускання;
- mod_perl-динамічні в Perl;
- mod_php-динамічні в PHP;
- mod_python-динамічний у Python;
- mod_rexx-динамічні в REXX і об`єкт REXX;
- mod_ruby-динамічні в Ruby;
- MOD asp dot net-динамічні в Microsoft.NET;
- mod_mono-динамічні в моно;
- mod_security-фільтрація на рівні програми для безпеки.
Конфігурація та безпека

Для того щоб зрозуміти, що таке Apache в світлі безпеки, потрібно розглянути його конфігурацію. Більша частина конфігурації виконується у файлі apache2.conf і httpd.conf, в залежності від системи, в якій по працює. Будь-яка зміна цього файлу вимагає перезапуску сервера або повторного примусового читання.
Ліцензія на програмне забезпечення, по якій поширюється базове ПЗ "Апач", є відмінною частиною історії Apache HTTP Server і спільноти відкритого вихідного коду. Ліцензія дозволяє розповсюджувати продукти з відкритим та закритим кодом.
Фонд вільного ПЗ не вважає таким Apache License, сумісного з версією 2 GNU General Public License (GPL), в якій програмне забезпечення ліцензується і не інтегровано з ПЗ. Це потрібно враховувати, перед тим як налаштувати веб-сервер Apache, що розповсюджується під ліцензією GPL. Однак версія 3 GPL включає положення, яке дозволяє йому бути сумісним з ліцензіями, що мають Положення про патентне відшкодування.
Більшість виявлених та виправлених вразливостей безпеки можуть використовуватися лише місцевими користувачами, а не віддалено. Однак деякі все ж запускаються віддалено в певних ситуаціях. Або якщо вони використовуються зловмисними локальними користувачами для порушення угод про спільний хостинг, використовуючи PHP як модуль вільного веб-сервера Apache.
Перевірка функціонування Апач

Щоб переконатися, що "Апач" працює правильно, відкривають веб-браузер і прописують наступну адресу: http: / / localhost. Потім натискають Enter, з`являється біла сторінка з повідомленням "це працює", що є доказом того, що веб-сервер працює ідеально.
"Апач" дозволяє створювати спеціальні конфігурації для налаштування та адаптації до потреб. Для цього знаходять файл http.conf в C: appserv Apache2.2 conf. Створюється його резервна копія, щоб уникнути помилок виконання, потім його відкривають за допомогою будь-якого редактора і змінюють потрібні рядки.
Щоб правильно виконати ці дії, потрібно добре знати Apache worker, оскільки будь-які зроблені зміни будуть відображені в продуктивності і запуску «Апач». Завдяки останнім рекомендаціям сервер буде встановлений. Працювати він буде в базовій конфігурації, яка дозволяє завантажувати сторінки або мережеві додатки в інтернет.
Управління інформацією

Apache - найбільш використовуваний веб-сервер, лідер з найбільшою кількістю установок у світі, набагато випереджаючи інші рішення, такі як Microsoft Internet Information Server (IIS). Цей проект відкритий для використання, оскільки він мультиплатформенний, має версії для всіх основних операційна система, дуже надійний і виділяється своєю безпекою і продуктивністю.
Комп`ютер, на якому це по працює, отримує те ж ім`я. Це має вирішальне значення, оскільки відповідає за отримання запитів на сторінки, що надходять від відвідувачів, які отримують доступ до сайту та керують їх доставкою або відмовою відповідно до встановленої політики безпеки. Незважаючи на те що цей процес може здатися простим, він включає в себе безліч аспектів і функцій, які необхідно виконати:
- Ефективність запитів.
- Велика кількість запитів HTTP, включаючи багатозадачність, може залишити службу згорнутою.
- Обмеження на доступ до файлів, управління аутентифікації користувачів або фільтрації запитів відповідно до їх походженням.
- Обробка помилок по сторінках з інформацією відвідувача і перенаправленням на заздалегідь визначені сторінки.
- Управління інформацією, що підлягає передачі відповідно до її форматом, і адекватне інформування браузера, що запитує вказаний ресурс.
- Журнал управління для зберігання отриманих запитів, що відбулися помилок і в цілому всієї інформації, яка зареєстрована і проаналізована для отримання статистики доступу до сайту.
"Апач" дозволяє налаштовувати віртуальний хостинг на основі IP-адрес або Імен, тобто мати кілька веб-сайтів на одному комп`ютері.
Файл apache2.conf
Безсумнівно, apache2.conf є найважливішим файлом, оскільки він визначає загальну поведінку веб-сторінок і, крім того, відповідає за доступ до різних модулів, що розширюють функціональність сервера.
Він знаходиться в каталозі /etc / apache2, і оскільки це текстовий файл, його можна легко редагувати за допомогою текстового редактора. Властивості файлу конфігурації-глобальні змінні сервера та розширення функціональності.
Глобальні змінні сервера-це змінні, які визначають загальне функціонування:
- Таблиця директив " Апач». Ім`я сервера позначається змінною ServerName, тому будь-яке перенаправлення або посилання, що існують у документах HTML, працює добре. Більшість змінних конфігурації розподілені серед інших невеликих файлів, що зберігаються в mods-available.
- .htaccess-це прихований текстовий файл, який дозволяє налаштувати роботу сервера.
- "Апач» - конкретний каталог без необхідності змінювати основний файл конфігурації apache2.conf. Коли веб-клієнт запитує файл із сервера, він переглядає з кореневого каталогу в підкаталог, що містить запитуваний для .htaccess, і бере до уваги директиви, що містяться в ньому, перед виконанням запиту.
Принцип .htaccess:
- Забороняє перерахування файлів у каталозі.
- Перенаправляє веб-трафік.
- Налаштовує сторінки помилок.
- Обмежує доступ до певних файлів.
- Забороняє доступ до певних IP-адрес або діапазонів IP-адрес.
- Розширює функціональність, що пов`язано з викликами інших модулів і файлами конфігурації. Всім директивам, пов`язаних з цим пунктом, передуватиме слово»включити".
Установка веб-сервера Apache

"Апач" спочатку був розроблений для роботи з технологією PHP, але без проблем може працювати і з .NET, що робить його більш успішним у порівнянні з IIS Microsoft, який є співробітником серверів, що використовують IIS, і забезпечує повну підтримку PHP без необхідності змінювати конфігурацію.
Щоб встановити і запустити веб-сервер, в першу чергу необхідно завантажити його з офіційного сайту. Завжди знаходять останню версію доступного програмного забезпечення і перевіряють, чи буде вона ідентифікована, як Win32 Binary, включаючи OpenSSL.
Версія має вбудовану установку і систему захисту даних. Після вибору її завантажують на ПК. Двічі натискають по значку файлу, щоб запустити процес, який простий, так як супроводжуватися помічником.
Одне з перших вікон, яке надасть необхідну інформацію, щоб веб-сервер міг підключитися до мережі, - це інформаційне вікно. Там користувач заповнює невелику форму, додавши ім`я мережевого домену, ім`я сервера та адресу електронної пошти адміністратора. Для перших двох варіантів вибирають localhost.
Далі з`явиться вікно установки, де вказані всі доступні компоненти. Вибирають їх все і перевіряють, наявність папки c: appserv Apache2.2. Далі виконують налаштування веб-сервера Apache.
Веб-Monitor на панелі завдань
Після установки Apache переконуються, що вона була виконана правильно. Для цього переходять в меню "Пуск" і знаходять опцію»виконати". З`явиться спливаюче вікно, в якому вводять cmd, виникає спливаючий екран системи. Щоб переконатися, що користувач працює в якості адміністратора, натискають правою кнопкою миші по вікну і вибирають " виконати від імені адміністратора».
Алгоритм установки:
- В консолі Windows знаходять папку bin Apache, для цього прописують наступне речення в консолі-c: appserv Apache2.2? in.
- Після введення натискають Enter і системний компонент, який буде виглядає так-C: appserv Apache2.2? In>.
- Перебуваючи в папці bin, вводять http: .exe-k install і натискають Enter.
- З`явитися повідомлення, схоже на «.Apache 2.2: служба вже встановлена». Це повідомлення перевірить, що «Апач» був успішно встановлений.
Один з найефективніших способів перевірити правильність роботи Apache-встановити, чи активний монітор програми. Його можна побачити на панелі завдань. Якщо він неактивний, активують його, переходячи в меню "Пуск", розділ "всі програми" і Apache http Server 2.2., натискають на Monitor Apache Server і активують його.
Монітор корисний, оскільки дозволяє зупиняти сервер, призупиняти та активувати його з повним комфортом, не заходячи у вікно консолі, просто натиснувши на піктограму на панелі завдань, щоб відкрити вікно керування.
Поради щодо встановлення в Linux

Якщо у користувача є сайт і потрібна платформа для його розміщення, можна скористатися послугами одного з хостинг-провайдерів або спробувати самостійно розмістити свій сайт на сервері.
Алгоритм установки:
- Скачують останню стабільну версію " Апач».
- Завантажують вихідні файли, відповідні системі.
- Витягують файли ПО.
- Після того завантажені файли потрібно буде розпакувати: gunzip-d httpd-2_0_nn.tar.gz; tar xvf httpd-2_0_NN.tar.
- Це створює новий каталог у поточному каталозі з вихідними файлами.
- Як тільки з`являться файли, вказують машині, де знайти всі вихідні. Найпростіший спосіб зробити це-прийняти всі значення за замовчуванням і просто набрати: ./configure.
- Налаштовують Apache за умови, що не було ніяких проблем з установкою і збіркою. Користувач налаштовує конфігурацію, що рівнозначно редагуванню файлу httpd.conf. Він зазвичай редагується за допомогою текстового редактора-vi PREFIX / conf / httpd.conf. Для внесення будь-яких змін потрібно бути користувачем root.
- Перевіряють роботу сервера.
Застосування в World Wide Web

Apach використовується в основному для відправки статичних і динамічних сторінок в World Wide Web. Багато додатків розроблені з урахуванням середовища реалізації " Апач» або будуть використовувати характеристики цього сервера. Apach-компонент сервера в популярній платформі додатків LAMP поряд з мова програмування MySQL та PHP, Perl, Python та Ruby, включаючи базу даних Oracle та сервер додатків IBM WebSphere. Mac OS X інтегрує його як частину власного web-server і підтримку додатків WebObjects.
Apache використовується для багатьох інших завдань, коли вміст повинен бути безпечним та доступним надійним способом. Наприклад, при спільному використанні файлів з персональний комп`ютер в інтернет. Користувач, у якого на робочому столі встановлений "Апач" , може довільно розміщувати файли в корені документів, звідки вони можуть стати загальними.
Розробники веб - додатків іноді використовують локальну версію Apache для попереднього перегляду та тестування коду під час розробки. Microsoft Internet Information Services (IIS) є основним конкурентом " Апач», а також веб-сервером Sun Java System від Sun Microsystems і безліччю інших додатків, таких як Zeus Web-Server.
Деякі з найбільших сайтів у світі працюють на Apache. Зовнішній інтерфейс пошукової системи Google заснований на її модифікованій версії, яка називається Google веб-сервер (GWS). Багато проектів "Вікіпедії" також працюють на серверах " Апач».