Установка apache-itk в CentOS

centos Applications

apache2-mpm-itk (сокращенно mpm-itk) - это MPM (Multi-Processing Module) для веб-сервера Apache. mpm-itk позволяет запускать каждый из ваших vhost под отдельным uid и gid - короче говоря, скрипты и конфигурационные файлы для одного vhost больше не должны быть читаемы для всех остальных vhost.

mpm-itk основан на традиционном prefork MPM, что означает, что он непотоковый; вкратце, это означает, что вы можете без проблем запускать код, не поддерживающий потоки (например, многие расширения PHP). С другой стороны, вы, конечно, теряете все преимущества производительности, которые вы могли бы получить с потоками; вам придется решить для себя, стоит ли это того или нет. Кроме того, вы получите дополнительное снижение производительности по сравнению с prefork, поскольку на каждый запрос приходится дополнительная вилка.

Подготовка

Устанавливаем дополнительные репозитории

epel

raven

CentOS добавление репозитория raven-release

REMI

Установка репозитория Remi в CentOS 8/Stream

Установка дополнительных пакетов

Данный шаг можно пропустить, мы устанавливаем дополнительные утилиты для упрощения процесса обновления

Проверка и установка обновлений

Проверяем на наличие обновлений и устанавливаем все доступные пакеты

после обновления, перезапускаем все службы которым это требуется

Отключаем SELinux

Как отключить SELinux

Открываем файл конфигурации SELinux и изменяем строку SELINUX на disable

после этого, необходимо перезагрузить сервер, что бы изменения вступили в силу.

Установка Apache-ITK в CentOs

После всех подготовительных процедур, мы готовы приступить к установке. Для этого выполните команду

sudo dnf install httpd-itk mod_ssl

Первоначальная настройка Apache-ITK

Нам необходимо подключить все необходимые модули, для этого открываем файл

и добавляем следующий текст

открываем файл

и заменяем

на следующий

далее, "отключаем" сайт по умолчанию

Настройки для подключения виртуальных хостов

Это не обязательно, но гораздо удобнее когда все лежит в одном месте, для этого нам необходимо создать директорию для виртуальных хостов

и добавить ее подключение в основную конфигурацию

Установка PHP

CentOS установка PHP

Для работы сайтов нам может понадобиться PHP, если он вам не нужен, можете пропустить этот шаг.

Все необходимые репозитории у нас уже установлены, по этому для установки PHP 8.3 (последней на момент написания статьи) выполним следующие команды:

Создание хоста по умолчанию

Хост по умолчанию не должен отвечать нам на какие-либо сайты, по этому создадим его в виде специально заглушки.

Создаем пользователя для сайта

создаем дополнительн

и создаедим сертифкат для "сайта"

Где {IP} - необходимо заменить на IP адрес сервера

далее создаем файл конфигурации

со следующим текстом

и создадим дополнительно файл .htaccess для блокировки доступа к сайту

Так же, создадим необходимые для работы журналы и выставим на них права

Открываем порты и запускаем Apache-ITK

Теперь, для првоерки коректности все настройки, нам необходимо открыть порты 80 и 443 и запустить службу

Далее, запускаем Apache  и ставим ег ов автозапуск

и првоеряем статус запуска, если все нормально, то вы должны получить результат аналогичный следующему

systemctl status httpd.service

Так же, можете зайти на IP адрес сервера, вы полжны получить ошибку доступа

Forbidden You don't have permission to access this resource.
Добавление виртуальных хостов

Для добавление виртуальных хостов, действуем по аналогии с хостом по умолчанию, с небольшими изменениями

  • {USER} - Имя пользователя, под которым будет работать сайт,  к примеру example
  • {DOMAIN} - полное доменное имя, к примеру example.com

Создаем пользователя

Создаем структуру каталогов

Создаем журналы

и сертифкат

далее , создаем файл конфиуграции

закидываем необходимые файлы, для работы веб сервера в директорию /var/www/{USER}/data/www/{DOMAIN} и именяем владельца файлов

после чего, перезапускаем веб сервер

либо, просто перечитываем файл конфигурации

Настройка ротации логов

Для настройки ротации логов, создаем файл конфигурации

со следующим содержимым

мы будем хранить журналы веб-сервера в течении 10 дней (rotate 10), при необходимости данный параметр можно уменьшить.

Avatar for Gnostis
Gnostis
Добавить комментарий