За поддержку данной функциональной возможности в Apache отвечает модуль http2_module. Для этого версия программного обеспечения веб-сервера должна быть 2.4.17 и выше. Также необходима библиотека TLS с поддержкой расширения ALPN (OpenSSL 1.0.2 и выше). В инструкции приведены примеры работы на операционной системе Linux CentOS, однако, принцип настройки apache http/2 схож и для других систем, например, Ubuntu, Debian. Рассмотренные варианты помогут как установить веб-сервер с нуля, так и перейти на 2-ю версию протокола на имеющемся сервере.
- 1. Обновление Apache
- 2. Создание сертификата
- 3. Настройка Apache
- 4. Тестирование
- Настройка виртуального домена
- Полезно
- Навигация
- Серверные решения
- Телефония
- Корпоративные сети
- Пошаговый ввод в домен Windows 10
- Apache или IIS – сравнение и преимущества
- Установка VirtualBox 6.0 на Linux
- Фиксируем проблему SQL Error 233
- Полезные команды для управления Apache в Linux
- Установка Apache Server
- Проверка версии Apache
- Пожалуйста, расскажите почему?
- baltun
1. Обновление Apache
Если httpd еще не установлен, выполняем команду:
yum install httpd
Проверяем версию веб-сервера apache следующей командой:
Если она ниже 2.4.17, обновляем пакет.
На момент написания статьи, в стандартном репозитории CentOS не было подходящей версии Apache. Для начала, ставим epel:
yum install epel-release
Добавляем репозиторий от CodeIT:
wget `rpm -q —qf «%
* если система выдаст ошибку, ставим wget командой yum install wget.
yum update httpd
Как правило, необходимый модуль устанавливается с обновлением. Но если этого не произошло, его можно установить следующей командой:
yum install mod_http2
* в Ubuntu установка модуля происходит командой a2enmod http2.
С версии Apache 2.4.27 Multi-Processing Module (MPM) prefork не поддерживает http/2 и можно увидеть предупреждение the mpm module (prefork.c) is not supported by mod_http2. Необходимо перейти на использование другого MPM — event или worker.
2. Создание сертификата
В качестве примера, будем использовать самоподписный сертификат. Создаем каталог для хранения ключей:
openssl req -new -x509 -days 1461 -nodes -out /etc/httpd/ssl/cert.pem -keyout /etc/httpd/ssl/cert.key -subj «/C=RU/ST=SPb/L=SPb/O=Global Security/OU=IT Department/CN=test.dmosk.local/CN=test»
В боевой среде желательно использовать корректный сертификат. Для этого его можно купить или сгенерировать в Let’s Encrypt бесплатно.
3. Настройка Apache
Устанавливаем модуль поддержки ssl:
yum install mod_ssl
Открываем на редактирование следующий файл:
Редактируем следующие строки:
SSLCertificateFile /etc/httpd/ssl/cert.pem
.
SSLCertificateKeyFile /etc/httpd/ssl/cert.key
Проверяем настройки apache и перезапускаем его:
4. Тестирование
На этом основная настройка завершена. Чтобы проверить работу http/2, открываем браузер с установленным плагином «HTTP/2 and SPDY indicator» или пользуемся онлайн тестом — tools.keycdn.com/http2-test. Переходим по адресу https://
Если мы генерировали самоподписный сертификат, браузер может выдать ошибку безопасности, игнорируем ее, продолжая загрузку сайта.
Настройка виртуального домена
Если необходима настройка нескольких доменов, настройка http/2 для конкретного из них выполняется следующим образом:
ServerName site.ru
DocumentRoot /usr/share/httpd/noindex
Protocols h2 http/1.1
SSLEngine on
SSLCertificateFile ssl/cert.pem
SSLCertificateKeyFile ssl/cert.key
* ServerName — домен сайта; DocumentRoot — расположение файлов сайта в системе; Protocols — версия протокола, в данном случае, http2 и http 1.1; SSLCertificateFile и SSLCertificateKeyFile — пути до файлов ключей, которые были сгенерированы нами ранее.
* напротив, чтобы запретить http/2 и принудительно использовать его первую версию, необходимо указать Protocols h1 http/1.1.
ShareIT — поделись знаниями!
Полезно
Узнать IP — адрес компьютера в интернете
Онлайн генератор устойчивых паролей
Онлайн калькулятор подсетей
Калькулятор инсталляции IP — АТС Asterisk
Руководство администратора FreePBX на русском языке
Руководство администратора Cisco UCM/CME на русском языке
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Популярное и похожее
Пошаговый ввод в домен Windows 10
Apache или IIS – сравнение и преимущества
Установка VirtualBox 6.0 на Linux
Фиксируем проблему SQL Error 233
Полезные команды для управления Apache в Linux
Для работы с веб — приложениями
В этом руководстве мы опишем некоторые из наиболее часто используемых команд управления службами Apache (HTTPD) , которые полезно знать, разработчику или системному администратору, и держать эти команды под рукой. Мы покажем команды для Systemd и SysVinit.
Убедитесь, что следующие команды должны выполняться от имени пользователя root или sudo и работать с любым дистрибутивом Linux, таким как CentOS, RHEL, Fedora, Debian и Ubuntu.
Установка Apache Server
Чтобы установить веб-сервер Apache, используйте ваш стандартный менеджер пакетов, как показано ниже.
Проверка версии Apache
Чтобы проверить установленную версию вашего веб-сервера Apache в вашей системе Linux, выполните следующую команду.
Если вы хотите увидеть номер версии Apache и параметры компиляции, используйте флаг -V, как показано ниже.
Проверка на ошибки синтаксиса конфигурации Apache
Чтобы проверить ваши файлы конфигурации Apache на наличие любых синтаксических ошибок, выполните следующую команду, которая проверит правильность файлов конфигурации, прежде чем перезапускать службу.
Запуск сервиса Apache
Чтобы запустить службу Apache, выполните следующую команду.
Включение службы Apache
Предыдущая команда пока только запускает службу Apache, чтобы включить автозапуск при загрузке системы, выполните следующую команду.
Перезапуск службы Apache
Чтобы перезапустить Apache (остановить, а затем запустить службу), выполните следующую команду.
Просмотр состояния сервиса Apache
Чтобы проверить информацию о состоянии времени выполнения службы Apache, выполните следующую команду.
Перезагрузка сервиса Apache
Если вы внесли какие-либо изменения в конфигурацию сервера Apache, вы можете указать службе перезагрузить свою конфигурацию, выполнив следующую команду.
Остановка службы Apache
Чтобы остановить службу Apache, используйте следующую команду.
Показать справку Apache Command
И последнее, но не менее важное: вы можете получить справку о служебных командах Apache в systemd, выполнив следующую команду.
На этом пока все! В этой статье мы объяснили наиболее часто используемые команды управления службами Apache / HTTPD, которые полезно будет знать, включая запуск, включение, перезапуск и остановку Apache.
Пожалуйста, расскажите почему?
Нам жаль, что статья не была полезна для вас 🙁 Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!
Подпишитесь на нашу еженедельную рассылку, и мы будем присылать самые интересные публикации 🙂 Просто оставьте свои данные в форме ниже.
![]()
baltun
Бывает нужно узнать версию установленного программного обеспечения на веб-сервере. Для этого можно использовать соответствующие SSH команды.
Как узнать версию PHP из командной строки?