Введение
HTTP-сервер Apache — самый популярный веб-сервер в мире. Это бесплатный кроссплатформенный HTTP-сервер с открытым исходным кодом, который предлагает мощные функции, которые можно расширить с помощью самых разных модулей. Следующие инструкции описывают, как установить и управлять веб-сервером Apache на компьютере с CentOS 8.
Предпосылки
Прежде чем приступить к изучению руководства, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo.
Если вы хотите установить Apache на удаленный сервер, продолжайте читать, в противном случае пропустите первый абзац «Подключение к серверу» и читайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:
ssh root@IP_DEL_SERVER
Далее вам нужно будет ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:
ssh nome_utente@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Установить Апач
Apache доступен в репозиториях CentOS по умолчанию, и его установка довольно проста.
В CentOS и RHEL он называется пакетом Apache и службой httpd
. Чтобы установить пакет, выполните следующую команду:
sudo dnf 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 8, мы можем проверить статус и версию службы 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 Wed 2020-01-15 23:44:50 CET; 1min 49s ago
Docs: man:httpd.service(8)
Main PID: 11064 (httpd)
Status: "Total requests: 12; Idle/Busy workers 100/0;Requests/sec: 0.11; Bytes served/sec: 5.8KB/sec"
Tasks: 213 (limit: 12251)
Memory: 25.8M
CGroup: /system.slice/httpd.service
├─11064 /usr/sbin/httpd -DFOREGROUND
├─11065 /usr/sbin/httpd -DFOREGROUND
├─11066 /usr/sbin/httpd -DFOREGROUND
├─11067 /usr/sbin/httpd -DFOREGROUND
└─11068 /usr/sbin/httpd -DFOREGROUND
sudo httpd -v
Server version: Apache/2.4.37 (centos)
Server built: Dec 23 2019 20:45:34
Наконец, чтобы проверить, все ли работает правильно, откройте IP-адрес или доменное имя вашего http://YOUR_IP
в браузере по вашему выбору, и вы увидите страницу приветствия Apache CentOS 8 по умолчанию, как показано ниже:
Управление службами Apache
Вы можете управлять службой Apache так же, как и любым другим системным диском.
Чтобы остановить службу 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) для каждого домена.
- Новые файлы Apache vhost должны заканчиваться на
.conf
и храниться в каталоге/etc/httpd/conf.d
. Вы можете иметь все хосты, которые вам нужны. - Рекомендуется следовать стандартному соглашению об именах, например, если ваше доменное имя —
mydomain.com
, имя файла конфигурации должно быть/etc/httpd/conf.d/mydomain.com.conf
- Файлы журналов Apache (
access_log
иerror_log
) находятся в каталоге/var/log/httpd/
. Рекомендуется иметь разные файлы журналовaccess
иerror
для каждого виртуального хоста. - Вы можете установить корень документа домена в любое место, которое вы хотите. Наиболее распространенные места для веб-рутов включают:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
Вывод
Apache успешно установлен на сервере CentOS 8. Теперь вы готовы начать распространение своих приложений и использовать Apache в качестве веб-сервера или прокси.