Apache на Linux: встановлення, запуск і базове налаштування

02.03.2026 0 By AdminA

Вступ

Apache HTTP Server — один із найпопулярніших вебсерверів у світі. У цій статті розглянемо, як встановити Apache на Debian/Ubuntu та RHEL/CentOS/Fedora, як запустити сервіс і виконати базове налаштування: документний корінь, віртуальні хости, журнали та прості заходи безпеки.

Встановлення Apache

Debian / Ubuntu

  • Оновіть список пакетів:
    sudo apt update
  • Встановіть пакет:
    sudo apt install apache2

RHEL / CentOS / Fedora

  • Для RHEL/CentOS (dnf або yum):
    sudo dnf install httpd
  • Для старіших версій з yum:
    sudo yum install httpd

Запуск і керування сервісом

Сучасні дистрибутиви використовують systemd. Основні команди:

  • Запустити:
    sudo systemctl start apache2   # Debian/Ubuntu
    sudo systemctl start httpd     # RHEL/CentOS/Fedora
  • Увімкнути автозапуск при старті системи:
    sudo systemctl enable apache2
    sudo systemctl enable httpd
  • Перевірити статус:
    sudo systemctl status apache2
    sudo systemctl status httpd
  • Перезавантажити конфіг:
    sudo systemctl reload apache2
    sudo systemctl reload httpd

Перевірка роботи

Після запуску відкрийте у браузері http://localhost або виконайте:

curl -I http://localhost

Повинна повернутися HTTP 200 та заголовки сервера. За замовчуванням на Debian файл index.html розміщується у /var/www/html.

Основні конфігураційні файли і структура

  • Debian/Ubuntu: конфіг знаходиться у /etc/apache2; віртуальні хости у /etc/apache2/sites-available та /etc/apache2/sites-enabled.
  • RHEL/CentOS/Fedora: основний файл /etc/httpd/conf/httpd.conf; додаткові конфіги та віртуальні хости у /etc/httpd/conf.d/.
  • Документний корінь: /var/www/html або вказаний у віртуальному хості.
  • Журнали: /var/log/apache2 (Debian) або /var/log/httpd (RHEL).

Налаштування простого віртуального хоста

Приклад конфігурації для Ubuntu/Debian у файлі /etc/apache2/sites-available/example.conf:

<VirtualHost *:80>
    ServerName example.local
    DocumentRoot /var/www/example
    ErrorLog ${APACHE_LOG_DIR}/example_error.log
    CustomLog ${APACHE_LOG_DIR}/example_access.log combined
</VirtualHost>

Після створення директорії та поміщення файлів:

  • Дозвольте сайт:
    sudo a2ensite example.conf
  • Перезавантажте Apache:
    sudo systemctl reload apache2

На RHEL створіть аналогічний файл у /etc/httpd/conf.d/example.conf та перезапустіть httpd.

Права на файли та власник

Документний корінь повинен бути доступний користувачу вебсервера (www-data на Debian, apache на RHEL). Приклад:

sudo mkdir -p /var/www/example
sudo chown -R www-data:www-data /var/www/example
sudo chmod -R 755 /var/www/example

Це дозволяє вебсерверу читати файли й виконувати директорії, але не дає надмірних прав іншим користувачам.

Логи та діагностика

  • Помилки: перевіряйте error.log при проблемах зі стартом або виконанням скриптів.
  • Доступ: access.log допомагає бачити запити та коди відповіді.
  • Команди для перегляду:
    sudo tail -f /var/log/apache2/error.log
    sudo tail -f /var/log/apache2/access.log

Модулі та додаткові параметри

На Debian/Ubuntu можна вмикати модулі командою a2enmod, наприклад:

sudo a2enmod rewrite
sudo a2enmod ssl
sudo systemctl restart apache2

На RHEL перевірте список модулів командою httpd -M та вмикайте/налаштовуйте модулі через конфігурацію.

Базова безпека

  • Приберіть зайві модулі, які не потрібні.
  • Вимкніть відображення списку директорій: переконайтеся, що директива Options не містить Indexes.
  • Встановіть дружні заголовки сервера: ServerTokens і ServerSignature можна зменшити, щоб не розголошувати версію.
  • Якщо використовуєте брандмауер: відкрийте порт 80 і 443 (ufw або firewalld).

Підсумок

Запуск Apache на Linux — нескладна задача: встановлення, старт, перевірка доступності і створення простого віртуального хоста. Далі можна додавати SSL, оптимізувати продуктивність і поглиблювати безпеку. Ця інструкція дає базову дорожню карту для швидкого старту з Apache на популярних дистрибутивах Linux.

Comments

comments