Веб-сервер Apache - один з найпоширеніших у світі. Apache має широкий функціонал, що включає динамічно завантажувані модулі, активна спільнота користувачів і відмінну інтеграцію з іншим популярним ПО.
З цього керівництва ви дізнаєтеся про те, як встановити Apache на сервер з встановленою ОС Ubuntu 16.04.
вимоги
Для того, щоб виконати необхідні дії, вам знадобиться сервер з встановленою ОС Ubuntu 16.04 і користувачем, який може виконувати команди sudo (НЕ привілейований користувач). Також ви можете налаштувати базовий фаєрвол для блокування несуттєвих портів.
Крок 1: установка Apache
Apache доступний в стандартних репозиторіях Ubuntu, тому веб-сервер можна встановити, використовуючи звичайну утиліту для установки програмних пакетів apt-get.
Спочатку необхідно оновити локальний індекс доступних пакетів для того, щоб побачити всі останні зміни в репозиторіях:
Після цього потрібно встановити пакет apache2:
Після підтвердження утиліта apt-get встановить Apache і всі необхідні залежності.
Крок 2: настройка фаервола
Перед тим, як протестувати Apache, необхідно модифікувати фаєрвол, а саме дозволити зовнішній доступ до стандартних веб-портам. Якщо ви виконали вимоги на початку статті, то зараз фаєрвол забороняє доступ до вашого сервера.
Під час установки Apache теж реєструється в UFW і створює кілька профілів. Ці профілі можуть використовуватися для того, щоб спростити процес включення або виключення доступу до Apache через фаєрвол.
Для того, щоб вивести всі профілі UFW, використовуйте команду:
Висновок буде приблизно таким:
Як ви бачите, для Apache є три профілі:
- Apache. цей профіль відкриває 80 порт (звичайний, незашифрований веб-трафік)
- Apache Secure. цей профіль відкриває тільки 443 порт (TLS / SSL зашифрований трафік)
- Apache Full. цей профіль відкриває обидва порту - 80 і 443
В даному випадку вам необхідно дозволити вхідний трафік профілю Apache Full наступною командою:
У висновку ви повинні побачити, що HTTP трафік дозволений:
Як ви бачите, профіль був активований, і доступ до веб-сервера дозволено.
Крок 3: перевірка веб-сервера
В кінці процесу установки Ubuntu 16.04 запускає Apache. Веб-сервер уже повинен працювати.
Для того, щоб переконатися в тому, що сервіс вже працює, введіть наступну команду:
Висновок буде приблизно ось таким:
Як ви бачите, сервіс успішно запущений. Однак найкращий спосіб протестувати - це запитати у Apache сторінку.
1 варіант. Ввести в командному рядку сервера:
Сенс цієї сторінки - показати, що Apache працює коректно, а також дати базову інформацію про файли і директорії Apache.Крок 4: базові команди Apache
Для роботи з веб-сервером Apache вам необхідно знати базові команди.
Команда для зупинки веб-сервера:
Команда для запуску веб-сервера (після зупинки):
Команда для перезапуску (зупинки і запуску):
Якщо ви внесли якісь зміни в конфігурацію, то ви часто можете перезапустити Apache без розриву з'єднань. Для цього використовуйте команду:
За замовчуванням Apache налаштований на автоматичний запуск після початку роботи сервера. Але цю настройку можна змінити за допомогою команди:
Якщо ж ви все-таки хочете, щоб Apache запускався разом з сервером, введіть:
Тепер Apache знову буде автоматично запускатися після завантаження сервера.
Крок 5: важливі файли і директорії Apache
Після того, як ви навчилися працювати з сервером, необхідно поговорити про декілька важливих директорії і файлах Apache.
- / Var / www / html. тут знаходиться той веб-контент, який спочатку варто тільки зі стандартної вітальній сторінки Apache, яку ви бачили вище.
- / Etc / apache2. конфігураційна директорія Apache. Тут знаходяться всі конфігураційні файли.
- /etc/apache2/apache2.conf. основний конфігураційний файл Apache. Його можна використовувати для загальних конфігураційних змін Apache. Цей же файл відповідає за завантаження інших конфігураційних файлів в цій директорії.
- /etc/apache2/ports.conf. цей файл відповідає за порти, які використовуються для підключення до сервера. За замовчуванням це порт 80 і іноді 443 порт (якщо включений модуль для обробки SSL).
- / Etc / apache2 / sites-available /. в цій директорії для кожного сайту зберігаються віртуальні хости (Virtual Hosts). Apache не використовуватиме файли з цієї папки доти, поки вони не прив'язані до директорії sites-enables. Тобто sites-available - це всі доступні хости, а sites-enabled - це включаються сервером. Тому для створення нового віртуального хоста вам потрібно спочатку створити його файл в цій директорії, а потім дати посилання на цей віртуальний хост в директорії sites-enabled для того, щоб включити його.
- / Etc / apache2 / sites-enabled /. директорія для включення віртуальних хостів, яка була згадана вище.
- / Etc / apache2 / conf-available /. / Etc / apache2 / conf-enabled /. директорії для тих конфігураційних фрагментів, які не пов'язані з віртуальними хостами. Зв'язок між цими ДИРЕТОР схожа зі зв'язком між двома директоріями вище. Файли в conf-available ви можете включати за допомогою команди a2enconf і вимикати командою a2disconf.
- / Etc / apache2 / mods-available /. / Etc / apache2 / mods-enabled /. ці директорії містять доступні і включені модулі відповідно. Файли, які закінчуються на .load, містять фрагменти для завантаження певних модулів, а файли, що закінчуються на .conf. містять настройки для цих модулів. Для включення модулів використовуйте команду a2enmod, для виключення - a2dismod.
- /var/log/apache2/access.log. за замовчуванням кожен запит до вашого сервера записується в цей лог (до тих пір, поки ви не зміните цю настройку).
- /var/log/apache2/error.log. за замовчуванням в цей лог записуються всі помилки. Директива LogLevel визначає, яку кількість інформації про помилки буде записуватися.
висновок
Тепер у вас є встановлений веб-сервер, і у вас є великий вибір контенту, який ви можете розміщувати, і технологій, які ви можете використовувати.