Tutorial

Установка веб-сервера Apache в Ubuntu 18.04. [Краткое руководство.]

Published on January 7, 2020
Русский
Установка веб-сервера Apache в Ubuntu 18.04. [Краткое руководство.]

Введение

HTTP-сервер Apache — самый широко используемый веб-сервер в мире. Он имеет множество мощных функций, включая динамически загружаемые модули, надежную поддержку различных медиа-форматов и интеграцию с другим популярным программным обеспечением.

В этом обучающем модуле мы расскажем, как установить веб-сервер Apache на сервере Ubuntu 18.04. Более подробную версию этого обучающего модуля можно найти в документе Установка веб-сервера Apache в Ubuntu 18.04.

Предварительные требования

Для прохождения этого обучающего модуля вам потребуется следующее:

  • Один сервер Ubuntu 18.04 и обычный пользователь без прав root с привилегиями sudo. Также вам потребуется включить базовый брандмауэр, чтобы заблокировать все порты, кроме необходимых. Вы научитесь настраивать учетную запись обычного пользователя и брандмауэр для вашего сервера, следуя указаниям руководства Начальная настройка сервера Ubuntu 18.04.

Создав учетную запись, войдите в систему как пользователь без привилегий root.

Шаг 1 — Установка Apache

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

Обновите локальный индекс пакетов:

  1. sudo apt update

Установите пакет apache2:

  1. sudo apt install apache2

Шаг 2 — Настройка брандмауэра

Проверьте доступные профили приложений ufw:

  1. sudo ufw app list
Output
Available applications: Apache Apache Full Apache Secure OpenSSH

Мы активируем профиль с наибольшими ограничениями, который будет разрешать заданный трафик, а именно трафик на порту 80 (обычный веб-трафик без шифрования):

  1. sudo ufw allow 'Apache'

Проверьте изменения:

  1. sudo ufw status
Output
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Apache ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Apache (v6) ALLOW Anywhere (v6)

Шаг 3 — Проверка веб-сервера

Используйте команду systemd init system, чтобы проверить работу службы:

  1. sudo systemctl status apache2
Output
● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Drop-In: /lib/systemd/system/apache2.service.d └─apache2-systemd.conf Active: active (running) since Tue 2018-04-24 20:14:39 UTC; 9min ago Main PID: 2583 (apache2) Tasks: 55 (limit: 1153) CGroup: /system.slice/apache2.service ├─2583 /usr/sbin/apache2 -k start ├─2585 /usr/sbin/apache2 -k start └─2586 /usr/sbin/apache2 -k start

Откройте страницу Apache по умолчанию, чтобы подтвердить работу программного обеспечения через ваш IP-адрес:

http://your_server_ip

Вы увидите веб-страницу Ubuntu 18.04 Apache по умолчанию:

Страница Apache по умолчанию

Шаг 4 — Настройка виртуальных хостов (рекомендуется)

При использовании веб-сервера Apache вы можете использовать виртуальные хосты (аналогичные серверным блокам в Nginx) для инкапсуляции данных конфигурации и размещения на одном сервере нескольких доменов. Мы создадим домен your_domain, но вы должны заменить это имя собственным доменным именем. Чтобы узнать больше о настройке доменного имени с помощью DigitalOcean, пройдите наш обучающий модуль Введение в DigitalOcean DNS.

Создайте каталог для your_domain:

sudo mkdir /var/www/your_domain

Назначьте владельца каталога:

  1. sudo chown -R $USER:$USER /var/www/your_domain

Разрешения корневых каталогов веб-сервера должны быть правильными, если вы не изменяли значение unmask. Тем не менее, вы можете проверить это с помощью следующей команды:

  1. sudo chmod -R 755 /var/www/your_domain

Создайте в качестве примера страницу index.html, используя nano или свой любимый редактор:

  1. nano /var/www/your_domain/index.html

Добавьте в страницу следующий образец кода HTML:

/var/www/your_domain/index.html
<html>
    <head>
        <title>Welcome to Your_domain!</title>
    </head>
    <body>
        <h1>Success!  The your_domain virtual host is working!</h1>
    </body>
</html>

Сохраните файл и закройте его после завершения.

Создайте новый файл виртуального хоста в /etc/apache2/sites-available/your_domain.conf:

  1. sudo nano /etc/apache2/sites-available/your_domain.conf

Вставьте следующий блок конфигурации, обновленный с учетом новых имен каталога и домена:

/etc/apache2/sites-available/your_domain.conf
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName your_domain
    ServerAlias your_domain
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Сохраните файл и закройте его после завершения.

Активируйте файл с помощью команды a2ensite:

  1. sudo a2ensite your_domain.conf

Отключите сайт по умолчанию, определеный в 000-default.conf:

  1. sudo a2dissite 000-default.conf

Проверьте наличие ошибок конфигурации:

  1. sudo apache2ctl configtest

Вы должны увидеть следующий результат:

Output
Syntax OK

Перезапустие Apache для внесения изменений:

  1. sudo systemctl restart apache2

Теперь Apache должен обслуживать ваше доменное имя. Вы можете проверить это, открыв в браузере адрес http://example.com, после чего должны увидеть примерно следующее:

Пример виртуального хоста Apache

Заключение

Теперь вы установили веб-сервер и у вас есть богатые возможности выбора типа обслуживаемого контента и технологий для расширения возможностей пользователя.

Если вы хотите развернуть более сложный набор обслуживания приложений, ознакомьтесь с этой статьей о настройке набора LAMP в Ubuntu 18.04.

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about us


About the authors

Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?
 
Leave a comment


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
DigitalOcean Cloud Control Panel