Налаштування веб-сервера Apache
ServBay дозволяє зручно керувати та налаштовувати вбудований пакет веб-сервера Apache. За допомогою графічного інтерфейсу ServBay ви можете легко змінювати основні параметри Apache для різних потреб у розробці проєктів.
Доступ до налаштувань Apache
- Відкрийте додаток ServBay.
- У лівій панелі навігації натисніть
Web сервер
. - Оберіть вкладку
Apache
.
Перед вами з'явиться інтерфейс налаштування Apache, як на зображенні нижче:
Опис основних параметрів
Детальний опис кожного параметра з інтерфейсу налаштувань Apache:
Основні налаштування
- HTTP Port: Порт, на якому Apache слухає HTTP-з'єднання. Типово —
80
. - HTTPS Port: Порт для HTTPS-з'єднань. Типово —
443
. - Server Name: Назва та порт, які сервер використовує для ідентифікації себе. Типово
127.0.0.1
— для локального доступу. - Server Root: Коренева директорія встановлення пакета Apache. Увага: це не папка вашого вебсайту (кореневу директорію сайту налаштовують окремо при додаванні сайту), а шлях до системних файлів Apache. Зазвичай —
/Applications/ServBay/package/apache/current
.
Оптимізація продуктивності (Performance Tuning)
- Timeout: Максимальний час (у секундах), протягом якого сервер чекає завершення I/O-операцій перед відмовою. Типово —
300
секунд. - Max KeepAlive Requests: Максимальна кількість запитів, дозволених у рамках одного стійкого з'єднання.
1000
означає багатократне використання підключення,0
— без обмежень. - KeepAlive Timeout: Максимальний час (у секундах), який сервер очікує наступний запит перед закриттям стійкого з'єднання. Типово —
60
секунд. - Keep Alive: Увімкнення/вимкнення підтримки стійких HTTP-з'єднань (KeepAlive). Рекомендовано
On
для кращої продуктивності. - MPM StartServers: Кількість дочірніх процесів, що створюються при запуску сервера.
- MPM MaxSpareThreads: Максимальна кількість незадіяних потоків — резервні потоки для обробки раптових запитів.
- MPM MaxConnectionsPerChild (раніше MaxRequestsPerChild): Максимальна кількість з'єднань, які обробляє один дочірній процес за життєвий цикл.
0
— без обмежень. Дозволяє уникати витоку пам'яті при тривалому використанні. - MPM MaxRequestWorkers (раніше MaxClients): Максимальна кількість одночасних запитів, які сервер обробляє (сума для всіх дочірніх процесів). Важливий параметр для продуктивності Apache.
- MPM ThreadsPerChild: Кількість потоків, створюваних кожним дочірнім процесом (актуально для MPM типу
worker
чиevent
).
Функції та особливості (Features & Characteristics)
- Access File Name: Директива, що визначає ім'я розподіленого конфігураційного файлу, зазвичай
.htaccess
. Дозволяє або забороняє використання .htaccess для перевизначення основних налаштувань сервера. - Use Canonical Name: Контролює, як Apache будує самопосилання у URL.
Off
зазвичай надає гнучкості. - Server Signature: Додає рядок із версією сервера та ім'ям віртуального хоста у підвалі системних сторінок (наприклад, сторінок помилок). З міркувань безпеки у продакшн-середовищі рекомендується
Off
. - Hostname Lookups: Чи виконувати зворотне DNS-ресолвінг IP-адрес клієнтів.
Off
пришвидшує роботу сервера, оскільки DNS-запити можуть бути повільними. - Server Tokens: Керує рівнем деталізації інформації у заголовку відповіді сервера (
Server:
).Minor
(наприклад, Apache/2.4) є більш захищеним варіантом порівняно зFull
(наприклад, Apache/2.4.58 (Unix) PHP/8.3.1). ВаріантProd
відображає лишеApache
.
Адміністрування та логування (Admin & Logging)
- Server Admin: Електронна пошта адміністратора, яку сервер показує у повідомленнях про помилки.
- Log Level: Рівень деталізації повідомлень, що записуються у файл помилок (
error_log
). Найпоширеніший варіант —warn
, що зберігає попередження та критичніші помилки. Також доступні рівні:debug
,info
,notice
,error
,crit
,alert
,emerg
.
Модулі (Modules)
У цьому розділі перелічено доступні модулі Apache. Ви можете активувати потрібні, встановивши галочки, або відключити, знявши їх. Часто використовувані модулі:
mod_rewrite
: Перезапис та трансформація URL.mod_ssl
: Підтримка SSL/TLS (HTTPS).mod_deflate
: Стиснення переданого контенту.mod_expires
: Керування кешуванням через HTTP-заголовки.mod_proxy
та пов’язані: Реалізація зворотного проксі.mod_auth_basic
,mod_auth_digest
: Базова або digest-автентифікація.
Після зміни налаштувань модулів не забудьте зберегти зміни. Для набуття чинності може знадобитися перезапуск сервера Apache.
Індекс директорій (Directory Index)
- Directory Index: Список файлів, які Apache пошукує у вказаній директорії при зверненні за адресою каталогу. Повертається контент першого знайденого у списку файлу. За замовчуванням:
index.html index.htm index.php
.
SSL/TLS налаштування
Ці параметри призначені для налаштування HTTPS у Apache.
- SSLCipherSuite / TLSCipherSuite: Визначає перелік криптографічних наборах, дозволених на сервері. Сучасні та безпечні налаштування критично важливі для захисту даних. ServBay пропонує рекомендовані значення.
- SSLProxyCipherSuite: Вказує набір шифрів для підключень SSL, коли Apache працює як зворотний проксі.
- SSLHonorCipherOrder:
On
означає, що сервер наполягає на власному порядку вибору шифру, а не на клієнтському. Рекомендовано увімкнути. - SSLStrictSNIVHostCheck:
On
означає, що сервер буде відхиляти з'єднання, якщо hostname, передане SNI (Server Name Indication), не співпадає з налаштуванням віртуального хоста. Захищає від деяких типів атак. - ProtocolHonorOrder: Аналогічно до
SSLHonorCipherOrder
, але для вибору версій протоколу. - SSLProtocol: Описує дозволені версії SSL/TLS-протоколів. Наприклад,
all -SSLv2 -SSLv3
дозволяє всі сучасні версії, окрім небезпечних SSLv2 та SSLv3. - SSLProxyProtocol: Вказує дозволені протоколи SSL для проксі-серверної ролі Apache.
- Protocols: Визначає порядок пріоритету підтримуваних протоколів, наприклад, включення HTTP/2:
h2 h2c http/1.1
значить в першу чергу HTTP/2 (зашифрованийh2
або незашифрованийh2c
), при його відсутності — HTTP/1.1.
Збереження та скидання налаштувань
- Reset: Натискання цієї кнопки скидає всі налаштування Apache до стандартних (за замовчуванням у ServBay).
- Save: Натискання цієї кнопки зберігає всі внесені до конфігурації Apache зміни. Зміни набувають чинності автоматично через ServBay, але при активному сервісі Apache можливо буде потрібно короткочасний рестарт.
Важливі зауваження
- Тут редагується глобальна конфігурація Apache. Налаштування для окремих сайтів (віртуальних хостів), наприклад
DocumentRoot
, окремі правилаRewriteRule
тощо, встановлюються при додаванні чи редагуванні розділуВебсайти
(Websites). - Якщо у верхній частині інтерфейсу ви бачите повідомлення "Service Apache is not enabled", це означає, що Apache наразі не запущений. Ви можете редагувати й зберігати конфігурацію, але зміни набудуть чинності лише після запуску служби Apache. Запустити її можна на головній панелі ServBay або через меню
Пакети
(Packages).
Підсумок
ServBay пропонує інтуїтивний інтерфейс для управління ключовими параметрами веб-сервера Apache. Знаючи призначення цих налаштувань, ви зможете скоригувати роботу сервера відповідно до ваших задач розробки, оптимізувати продуктивність і підвищити безпеку, максимально ефективно використовуючи ServBay як потужне локальне середовище для розробника.