Apache — один из самых популярных веб-серверов в мире. Это кроссплатформенный HTTP-сервер с открытым исходным кодом, который обслуживает большую часть веб-сайтов в Интернете. Apache предоставляет множество мощных функций, которые можно расширить с помощью дополнительных модулей.
В этом руководстве описывается, как установить и управлять веб-сервером Apache в Ubuntu 20.04.
Содержание
Подготовка
Перед тем, как начать работу с руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .
Установка Apache
Apache включен в репозитории Ubuntu по умолчанию.
Установка довольно проста. В системах Ubuntu и Debian пакет и служба Apache называются apache2
.
Выполните следующие команды, чтобы обновить индекс пакета и установить Apache:
sudo apt update
sudo apt install apache2
Когда процесс установки будет завершен, служба Apache запустится автоматически.
Вы можете проверить, что Apache запущен, набрав:
sudo systemctl status apache2
Вывод должен сообщить вам, что служба запущена и разрешена для запуска при загрузке системы:
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2020-05-09 19:28:40 UTC; 36min ago
...
Вот и все, вы успешно установили Apache на свой сервер Ubuntu 20.04 и можете начать его использовать.
Открытие портов HTTP и HTTPs
Apache прослушивает порт 80
(HTTP) и 443
(HTTPS). Вы должны открыть эти порты в брандмауэре, чтобы веб-сервер был доступен из Интернета.
Предполагая, что вы используете UFW
, вы можете сделать это, включив профиль Apache Full, который включает правила для обоих портов:
sudo ufw allow 'Apache Full'
Проверьте изменение:
sudo ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
Apache Full ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
Apache Full (v6) ALLOW Anywhere (v6)
Проверка установки Apache
Чтобы убедиться, что все работает правильно, откройте браузер, введите IP-адрес вашего сервера http://YOUR_IP_OR_DOMAIN/
, и вы увидите страницу приветствия Ubuntu 20.04 Apache по умолчанию, как показано ниже:
На странице представлена основная информация о файлах конфигурации Apache, вспомогательных скриптах и расположении каталогов.
Настройка виртуального хоста
Виртуальный хост — это директива конфигурации Apache, которая позволяет запускать более одного веб-сайта на одном сервере. Обычно виртуальный хост описывает один веб-сайт.
Apache поставляется с одним включенным виртуальным хостом по умолчанию. Все домены, указывающие на IP-адрес сервера, будут соответствовать виртуальному хосту по умолчанию. Если вы будете размещать один веб-сайт, вы можете загрузить его содержимое в /var/www/html
и отредактировать конфигурацию виртуального хоста, найденную в файле /etc/apache2/sites-enabled/000-default.conf
.
Если вы планируете разместить более одного веб-сайта, вам необходимо создать конфигурацию виртуального хоста для каждого сайта. В этом разделе мы создадим веб-сайт для домена под названием «example.com». Вам следует заменить «example.com» своим доменным именем.
Первый шаг — создать корневой каталог документов, где файлы веб-сайта для доменного имени будут храниться и обслуживаться в ответ на запросы. Выполните следующую команду, чтобы создать каталог :
sudo mkdir -p /var/www/example.com
В целях тестирования создайте файл index.html
внутри корневого каталога документов домена:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Welcome to example.com</title>
</head>
<body>
<h1>Success! example.com home page!</h1>
</body>
</html>
Сохраните и закройте файл, когда закончите.
Чтобы избежать проблем с разрешениями, измените владельца корневого каталога документов домена на пользователя apache ( www-data
):
sudo chown -R www-data: /var/www/example.com
Следующим шагом является создание конфигурации виртуального хоста для домена «example.com». Лучше всего хранить каждую конфигурацию виртуального хоста в отдельном файле.
Файлы Apache vhosts хранятся в каталоге /etc/apache2/sites-available
. Стандартное соглашение об именах — называть файл в соответствии с доменом.
Откройте текстовый редактор и создайте следующий файл:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
DocumentRoot /var/www/example.com/public_html
<Directory /var/www/example.com/public_html>
Options -Indexes +FollowSymLinks
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
</VirtualHost>
Apache не читает файлы конфигурации, находящиеся в каталоге /etc/apache2/sites-available
если они не связаны с каталогом /etc/apache2/sites-enabled
.
Чтобы активировать конфигурацию виртуального хоста, создайте символическую ссылку с помощью утилиты a2ensite
:
sudo a2ensite example.com
Проверьте конфигурацию на наличие синтаксических ошибок с помощью:
sudo apachectl configtest
Если ошибок нет, вы увидите следующий вывод:
Syntax OK
Перезапустите службу Apache, чтобы изменения вступили в силу:
sudo systemctl restart apache2
Наконец, чтобы убедиться, что все работает должным образом, откройте http://example.com
в своем браузере, и вы увидите что-то вроде этого:
Выводы
Мы показали вам, как установить Apache в Ubuntu 20.04. Теперь вы готовы начать развертывание своих приложений и использовать Apache в качестве веб-сервера или прокси-сервера.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Этот пост является частью серии Как установить LAMP Stack в Ubuntu 20-04. Другие сообщения из этой серии: