HTTP-сервер Apache — самый популярный веб-сервер в мире. Это бесплатный кроссплатформенный HTTP-сервер с открытым исходным кодом, обеспечивающий мощные функции, которые можно расширить с помощью самых разных модулей. Следующие инструкции описывают, как установить и управлять веб-сервером Apache на вашем компьютере CentOS 7.
Содержание
Подготовка
Перед тем, как начать работу с руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .
Установка Apache
Apache доступен в репозиториях CentOS по умолчанию, и установка довольно проста.
В CentOS и RHEL пакет Apache и служба называются httpd
. Чтобы установить пакет, выполните следующую команду:
sudo yum install httpd
После завершения установки включите и запустите службу Apache:
sudo systemctl enable httpd
sudo systemctl start httpd
Настройка брандмауэра
Если ваш сервер защищен брандмауэром, вам необходимо открыть порты HTTP и HTTPS, 80
и 443
. Используйте следующие команды, чтобы открыть необходимые порты:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Проверка установки Apache
Теперь, когда у нас установлен и запущен Apache на нашем сервере CentOS 7, мы можем проверить статус и версию службы Apache с помощью:
sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2018-04-26 07:13:07 UTC; 11s ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 3049 (httpd)
...
sudo httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built: Oct 19 2017 20:39:16
Наконец, чтобы убедиться, что все работает правильно, откройте IP-адрес своего сервера http://YOUR_IP
в выбранном браузере, и вы увидите страницу приветствия CentOS 7 Apache по умолчанию, как показано ниже:
Управление службой Apache
Вы можете управлять службой Apache так же, как и любым другим модулем systemd.
Чтобы остановить службу Apache, запустите:
sudo systemctl stop httpd
Чтобы запустить его снова, введите:
sudo systemctl start httpd
Чтобы перезапустить службу Apache:
sudo systemctl restart httpd
Чтобы перезагрузить службу Apache после внесения некоторых изменений в конфигурацию:
sudo systemctl reload httpd
Если вы хотите отключить запуск службы Apache при загрузке:
sudo systemctl disable httpd
И чтобы снова включить его:
sudo systemctl enable httpd
Структура файла конфигурации Apache и передовые методы
- Все файлы конфигурации Apache находятся в каталоге
/etc/httpd
. - Основной файл конфигурации Apache — это
/etc/httpd/conf/httpd.conf
. - Все файлы конфигурации с
.conf
расположенные в каталоге/etc/httpd/conf.d
, включены в основной файл конфигурации Apache. - Файлы конфигурации, отвечающие за загрузку различных модулей Apache, находятся в каталоге
/etc/httpd/conf.modules.d
. - Для удобства обслуживания рекомендуется создавать отдельный файл конфигурации (vhost) для каждого домена.
- Новые файлы vhost Apache должны оканчиваться на
.conf
и храниться в каталоге/etc/httpd/conf.d
. Вы можете иметь столько хостов, сколько вам нужно. - Рекомендуется следовать стандартному соглашению об именах, например, если ваше доменное имя —
mydomain.com
тогда файл конфигурации должен называться/etc/httpd/conf.d/mydomain.com.conf
- Файлы журнала Apache (
access_log
иerror_log
) находятся в каталоге/var/log/httpd/
. Рекомендуется иметь разные файлыaccess
и журналовerror
для каждого виртуального хоста. - Вы можете установить корневой каталог документов домена в любое место. Наиболее распространенные места для webroot:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
Выводы
Вы успешно установили Apache на свой сервер CentOS 7. Теперь вы готовы начать развертывание своих приложений и использовать Apache в качестве веб-сервера или прокси-сервера.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Этот пост является частью серии Install LAMP Stack on CentOS 7. Другие сообщения из этой серии: