Установите Nginx с серверными блоками (виртуальными хостами) в Debian 10
Nginx — очень популярный высокопроизводительный веб-сервер, сочетающий в себе возможности обратного проксирования, балансировки нагрузки, кэширования и многого другого. В зависимости от того, как он настроен, он может действовать как обратный прокси-сервер, а также как балансировщик нагрузки для серверов HTTP/HTTPS.
Веб-сервер Nginx обладает феноменальной способностью обслуживать тысячи одновременных соединений, что делает его самым быстрым веб-сервером, обеспечивающим работу более половины самых загруженных сайтов в мире. К ним относятся Netflix, DuckDuckGo и DropBox, и это лишь некоторые из них.
Читайте также: как установить Apache с виртуальными хостами в Debian 10
В этом руководстве мы покажем вам, как установить Nginx с виртуальными хостами для размещения нескольких доменов на сервере Debian 10.
Предварительные условия
Прежде чем приступить к работе, убедитесь, что соблюдены следующие требования:
- Экземпляр Debian 10.
- Полное доменное имя (FQDN), указывающее на сервер.
- В этом руководстве мы используем домен
linux-console.net
, указывающий на систему Debian 10 с IP-адресом 192.168.0.104. - Хорошее подключение к Интернету.
Шаг 1. Обновите репозиторий пакетов Debian 10.
Прежде всего нам необходимо обновить наш локальный репозиторий пакетов до последних версий. Для этого войдите в систему как обычный пользователь с привилегиями sudo и выполните команду ниже.
sudo apt update -y
Шаг 2. Установите Nginx в Debian 10.
Поскольку Nginx присутствует в репозиториях Debian, мы можем спокойно установить его с помощью менеджера пакетов apt, который поставляется с Debian.
sudo apt install nginx -y
Шаг 3. Проверка статуса веб-сервера Nginx
Если ошибок не возникло, значит, веб-сервер Nginx успешно установлен. Целесообразно проверить состояние веб-сервера перед выполнением дальнейших настроек.
Чтобы проверить статус Nginx, выполните:
systemctl status nginx
Если веб-сервер запущен и работает, вы получите уведомление ниже.
Если вы хотите перезапустить веб-сервер Nginx, выполните команду.
systemctl restart nginx
Чтобы остановить Nginx, введите команду.
systemctl stop nginx
Чтобы запустить веб-сервер, запустите.
systemctl start nginx
Чтобы настроить веб-сервер Nginx для запуска при загрузке.
systemctl enable nginx
Читайте также: 10 наиболее часто используемых команд Nginx, которые должен знать каждый пользователь Linux
Шаг 4. Настройте брандмауэр для открытия порта Nginx
После того, как Nginx успешно установлен и запущен, нам необходимо разрешить веб-доступ к сервису, особенно для внешних пользователей. Если у вас включен брандмауэр UFW, вам необходимо разрешить HTTP-доступ через брандмауэр.
Для этого выполните команду.
sudo ufw allow 'Nginx HTTP'
Затем перезагрузите брандмауэр, чтобы изменения вступили в силу.
sudo ufw reload
Отлично, теперь вы можете убедиться, что HTTP разрешен через брандмауэр, запустив.
sudo ufw status
Из приведенного выше фрагмента мы ясно видим, что Nginx HTTP разрешен через Брандмауэр UFW.
Шаг 5. Доступ к веб-серверу Nginx
На данный момент мы выполнили базовые настройки для запуска и работы Nginx. Чтобы получить доступ к веб-серверу через веб-браузер, найдите IP-адрес сервера, как показано.
http://server-IP-address
Это подтверждение того, что Nginx запущен и работает.
Шаг 6. Настройка блоков сервера Nginx в Debian 10
Это необязательный шаг, который полезен, если вы хотите разместить несколько доменов на веб-сервере Nginx. Чтобы это работало, вам необходимо, чтобы доменное имя указывало на ваш сервер Debian.
В этом разделе мы будем использовать доменное имя linux-console.net
, запись A
которого указывает на IP-адрес сервера 192.168.0.104.
Когда вы указываете имя домена на IP-адрес вашего сервера, имя домена вскоре изменится и укажет на ваш веб-сервер, как показано.
Давайте теперь создадим блок сервера.
Во-первых, давайте создадим каталог для нашего домена, как показано.
sudo mkdir -p /var/www/html/linux-console.net
Затем назначьте необходимое владение файлом, как показано.
sudo chown -R $USER:$USER /var/www/html/linux-console.net
Затем назначьте разрешения на чтение и выполнение группе и общедоступным пользователям, как показано.
sudo chmod -R 755 /var/www/html/linux-console.net
Давайте теперь создадим простой пример веб-страницы index.html
с помощью текстового редактора vim.
sudo vim /var/www/html/linux-console.net/index.html
Добавьте в файл образец содержимого. Это будет отображаться в браузере.
<html>
<head>
<title>Welcome to Linux geeks</title>
</head>
<body>
<h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
</body>
</html>
Сохраняем и выходим из редактора
Для обслуживания этого контента необходимо создать блок сервера.
Создадим серверный блок
vim /etc/nginx/sites-available/linux-console.net
Скопируйте и вставьте следующий контент в файл блока сервера.
server {
listen 80;
listen [::]:80;
root /var/www/html/linux-console.net;
index index.html index.htm index.nginx-debian.html;
server_name linux-console.net linux-console.net;
location / {
try_files $uri $uri/ =404;
}
}
Обязательно замените имя домена linux-console.net своим собственным доменным именем.
Чтобы активировать или включить файл блокировки сервера, создайте символическую ссылку, как показано.
sudo ln -s /etc/nginx/sites-available/linux-console.net /etc/nginx/sites-enabled/
Чтобы убедиться, что все параметры Nginx настроены правильно, запустите.
sudo nginx -t
Отлично, мы готовы идти! Наконец перезапустите Nginx.
sudo systemctl restart nginx
Зайдите в свой браузер и обновите его, и если все прошло хорошо, браузер должен обслуживать веб-страницу блокировки вашего сервера, как показано.
Шаг 7. Доступ к файлам журналов Nginx
Чтобы получить доступ к файлам журналов запросов, отправленных на ваш сервер, откройте файл ниже.
sudo vim /var/log/nginx/access.log
Если вы столкнулись с ошибками на веб-сервере Nginx, проверьте файл на наличие ошибок.
sudo vim /var/log/nginx/error.log
Заключение
В этом руководстве вы узнали, как установить Nginx на свой экземпляр Debian 10 и настроить его для поддержки дополнительных доменов. Мы надеемся, что это руководство оказалось для вас полезным. Ваш отзыв будет оценен..