Новини високих технологій
» » Що таке Apache? Вільний веб-сервер Apache HTTP Server

Що таке Apache? Вільний веб-сервер Apache HTTP Server

10-02-2019, 20:10
789
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 року. Об'єднання файлів конфігурації було реалізовано у випуску 133. 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-документах, працюють добре. Більшість змінних конфігурації розподілені серед інших невеликих файлів, що зберігаються в модами доступних. .htaccess - це прихований текстовий файл, який дозволяє налаштувати роботу сервера. «Апач» - конкретний каталог без необхідності змінювати основний файл конфігурації apache2.conf. Коли веб-клієнт запитує файл з сервера, він дивиться з кореневого каталогу в каталог, що містить запитаний .htaccess, і приймає до уваги, що містяться в ньому директиви перед виконанням запиту. Принцип .htaccess:
Забороняє перерахування файлів в каталозі. Перенаправляє веб-трафік. Налаштовує сторінки помилок. Обмежує доступ до певних файлів. Забороняє доступ до певних IP-адресами або діапазони IP-адрес. Розширює функціональність, що пов'язано з викликами інших модулів і файлів конфігурації. Всім директивам, пов'язаних з цим пунктом, буде передувати слово «Включити».

Установка веб-сервера Apache

«Апач» спочатку був розроблений для роботи з технологією PHP, але без проблем може працювати і з .NET, що робить його більш успішним у порівнянні з Microsoft IIS, є коллаборантом для серверів, що використовують 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). Багато проекти "Вікіпедії" також працюють на серверах «Апач».
Цікаво по темі
MiniDLNA - настройка сервера, поради по установці, конфігурації
MiniDLNA - настройка сервера, поради по установці, конфігурації
MiniDLNA надає безкоштовне рішення для обміну цифровими медіа між пристроями, з можливістю використовувати цю технологію в локальній мережі.
Редирект Htaccess і його налаштування
Редирект Htaccess і його налаштування
Файл .htaccess – це потужний інструмент для зміни конфігурації веб-сервера на рівні домену і навіть на рівні окремих каталогів. У даній статті ми
Помилка ssl error rx record too long: причина
Помилка ssl error rx record too long: причина
Також в браузері можна побачити повідомлення ssl_error_rx_record_too_long при відвідуванні веб-сайту через HTTPS. Це зводиться до помилки в
Установка PhpMyAdmin в різних операційних системах
Установка PhpMyAdmin в різних операційних системах
Як встановити PhpMyAdmin в Ubuntu, CentOS і Debian. Особливості установки LAMP для використання PhpMyAdmin.
Установка і настройка phpMyAdmin: покрокова інструкція та рекомендації
Установка і настройка phpMyAdmin: покрокова інструкція та рекомендації
Докладний опис установки і настройки програми для управління базами даних PhpMyAdmin в різних системах.
Веб-сервер (Web Server): для чого він потрібен, як влаштовано і як працює
Веб-сервер (Web Server): для чого він потрібен, як влаштовано і як працює
Як правило, у рядового користувача такі поняття, як «веб-сервер» або «хостинг», асоціюються з чимось ...