Nginx

Как установить несколько доменов на сервере Nginx

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

Установить Nginx

По умолчанию Ubuntu не поставляется с Nginx. Поэтому его необходимо установить вручную с помощью следующих команд.

sudo apt-get update
sudo apt-get установить Nginx

Первая команда обновляет информацию о локальном репозитории, а вторая устанавливает Nginx в системе.

Настроить брандмауэр

Настройка межсетевого экрана зависит от программного обеспечения межсетевого экрана, установленного в системе. Поскольку на рынке доступно несколько брандмауэров, их непросто научить настраивать. Таким образом, это руководство только демонстрирует, как настроить встроенный брандмауэр по умолчанию - UFW, также известный как несложный брандмауэр. Другие брандмауэры должны иметь аналогичную конфигурацию.

список приложений sudo ufw
sudo ufw разрешить 'Nginx HTTPS'
sudo ufw enable

Первая команда выводит список доступных профилей, которые будут использоваться в брандмауэре. Вторая команда использует профиль Nginx HTTPS в разрешенном (он же Белый список) списке брандмауэра, а третья команда включает брандмауэр. Это руководство позже демонстрирует, как использовать HTTPS. HTTPS необходим в настоящее время, поскольку он защищает соединение для передачи данных между клиентом и сервером. Такие браузеры, как Chrome, будут автоматически использовать HTTPS-версию любого сайта в будущем; следовательно, требуется, чтобы SSL был включен для любого веб-сайта, особенно когда владелец веб-сайта планирует улучшить свой SEO-рейтинг и безопасность.

Настроить файловую систему

Несмотря на то, что Nginx поддерживает обслуживание контента через несколько доменных имен, по умолчанию он настроен для обслуживания контента через один домен. Путь по умолчанию для Nginx - / var / www / html. Для нескольких доменов требуется несколько каталогов. Следующие инструкции демонстрируют, как создать несколько каталогов для обслуживания контента через несколько доменов.

  1. Создайте каталог для каждого домена с помощью следующих команд. Флаг p необходим для создания родительских каталогов, то есть, когда www или любой другой каталог в адресе не существует, он создает целую строку каталогов с флагом p.
  2. судо mkdir -p / var / www / nucuta.com / html
    судо mkdir -p / var / www / nucuta.net / html.
  3. Назначьте право собственности на каталоги. Это гарантирует, что пользователь имеет полный контроль над каталогами. Однако здесь пользователь берется из текущего пользователя, вошедшего в систему, и поэтому важно войти в учетную запись пользователя, которая будет назначена каталогу. Первый сегмент $ USER предназначен для пользователя, а второй сегмент - для группы, к которой принадлежит пользователь.
  4. sudo chown -R $ ПОЛЬЗОВАТЕЛЬ: $ ПОЛЬЗОВАТЕЛЬ / var / www / nucuta.com / html
    sudo chown -R $ ПОЛЬЗОВАТЕЛЬ: $ ПОЛЬЗОВАТЕЛЬ / var / www / nucuta.net / html
  5. Измените разрешение каталогов с помощью следующих команд. В файловых системах Linux есть 3 объекта и 3 разрешения. В следующем примере первая цифра предназначена для пользователя, вторая цифра - для группы, а последняя цифра - для всех (также называемых общедоступными). Разрешение на чтение имеет значение 4, разрешение на запись имеет значение 2, а разрешение на выполнение имеет значение 1. Эти числа можно сложить вместе, чтобы изменить разрешение объекта, например, 755 означает, что ПОЛЬЗОВАТЕЛЬ имеет разрешение на ЧТЕНИЕ, ЗАПИСЬ и ВЫПОЛНЕНИЕ (4 + 2 + 1 = 7), ГРУППА имеет разрешение на ЧТЕНИЕ и ВЫПОЛНЕНИЕ (4 + 1 = 5), ВСЕ могут делать то же самое. Разрешение применяется к файлам и каталогам с разными правилами. Правила перечислены в следующей таблице.
  6. sudo chmod -R 755 / var / www / nucuta.com / html
    Судо chmod -R 755 / var / www / nucuta.net / html
  7. После назначения разрешения создайте страницу по умолчанию для каждого домена в веб-браузере при вызове голого домена. Голый домен означает домен без каких-либо поддоменов, например nucuta.ком.
  8. нано / вар / www / nucuta.com / html / index.html.
    нано / вар / www / nucuta.сеть / HTML / индекс.html.
  9. Добавьте следующий шаблонный код в каждый индексный файл и сохраните как индекс.html в соответствующем каталоге (как показано выше).


Добро пожаловать на первый сайт


Успех!



Настроить Nginx

Настроить Nginx не так сложно, поскольку Nginx по умолчанию поддерживает несколько доменов. Несмотря на то, что можно использовать информацию о конфигурации нескольких доменов в одном файле, рекомендуется использовать несколько файлов для информации о конфигурации каждого домена. Файл конфигурации по умолчанию называется «default» и находится в / etc / nginx / sites-available / default

  1. Перейдите в / etc / nginx / sites-available / default и удалите всю информацию о конфигурации. Используйте текстовый редактор, например nano или блокнот++
  2. нано / и т. д. / nginx / сайты-доступные / по умолчанию
  3. Скопируйте и вставьте следующую конфигурацию и сохраните ее.
  4. server
    слушаем 80 default_server;
    слушать [::]: 80 default_server;
    корень / вар / www / html;
    индекс индекс.html-индекс.индекс htm.nginx-debian.html;
    имя сервера _;
    место расположения /
    try_files $ uri $ uri / = 404;

  5. Скопируйте информацию о конфигурации из файла по умолчанию в файл конфигурации для домена с помощью следующей команды.
  6. sudo cp / etc / nginx / sites-available / default / etc / nginx / sites-available / nucuta.ком
  7. Повторите вышеупомянутый шаг и для другого домена с помощью следующей команды.
  8. sudo cp / etc / nginx / sites-available / default / etc / nginx / sites-available / nucuta.сеть
  9. Откройте оба файла с помощью текстового редактора, такого как nano (nano), и измените значение директивы server_name следующим образом.
  10. В / etc / nginx / sites-available / nucuta.com файл
    имя_сервера nucuta.ком
    В / etc / nginx / sites-available / nucuta.сетевой файл
    имя_сервера nucuta.сеть
  11. После настройки обоих файлов скопируйте их в следующие каталоги, чтобы активировать файлы конфигурации. Он создает символическую ссылку между фактическим файлом и каталогом; следовательно, в будущем нужно будет изменять только файлы в каталоге, доступном для сайта, чтобы внести изменения как в каталоги, доступные для сайта, так и в каталоги, доступные для сайта.
  12. sudo ln -s / etc / nginx / сайты-доступные / nucuta.com / и т. д. / nginx / сайты-включенные /
    sudo ln -s / etc / nginx / сайты-доступные / nucuta.сеть / и т. д. / nginx / сайты-включенные /
  13. Просмотрите файлы конфигурации, внесите дополнительные изменения и используйте следующие команды, чтобы изменения вступили в силу. Первая команда гарантирует, что файлы конфигурации не содержат недопустимой информации о конфигурации, а вторая команда гарантирует, что сервер правильно перезагружен или перезапущен, чтобы изменения вступили в силу. Используйте команды перезагрузки или перезапуска. Перезагрузка предпочтительна, но перезагрузка может быть использована, если перезагрузка не сработала.
  14. systemctl config nginx
    systemctl перезагрузить nginx или systemctl перезапустить nginx.

Настройте записи DNS

Настройка параметров DNS зависит от поставщика DNS. Однако у всех DNS-провайдеров похожий интерфейс. По умолчанию регистратор домена предоставляет доступ к записям DNS. На этом этапе требуется IP-адрес сервера, на котором размещен веб-сервер nginx. Получение IP-адреса полностью зависит от платформы. Такие платформы, как Linode, DigitalOcean, Vultr, отображают IP-адрес на панели управления. Если его сложно найти, обратитесь в службу поддержки соответствующего поставщика услуг.

  1. В настройках DNS добавьте запись «A» и используйте IP-адрес сервера как значение, доменное имя как хозяин. Убедитесь, что используемое здесь доменное имя совпадает с доменным именем, используемым в файле конфигурации Nginx. После настройки одного домена повторите это и для другого домена.
  2. Разрешить обновление записей DNS. Обычно это занимает до 24 часов, но обычно это занимает несколько минут.

Включить HTTPS

Включить HTTPS довольно просто, и это можно сделать бесплатно с помощью letsencrypt. Letsencrypt - это центр сертификации с открытым исходным кодом, который выпускает бесплатные SSL-сертификаты для веб-мастеров для шифрования трафика на их веб-сайты.

  1. Установите оснастку в операционной системе с помощью следующей команды. Обратите внимание, что этот сегмент будет использовать демон snap для установки всех необходимых пакетов вместо apt или apt-get. Snap - это альтернативное управление пакетами и инструмент развертывания, который можно использовать для установки пакетов в Ubuntu и многих других операционных системах Linux. Это не требуется для установки при наличии Ubuntu 16.04 LTS или любая другая более поздняя версия. Тем не менее, запустите последнюю команду, чтобы убедиться, что оснастка актуальна.
  2. sudo apt update
    sudo apt установить snapd
    sudo snap install core; sudo snap обновить ядро
  3. Установите certbot, который настраивает и обновляет сертификаты SSL для обоих доменов. Без certbot сертификаты SSL необходимо устанавливать вручную. Кроме того, обновление также необходимо производить вручную. Это может быть проблемой, поскольку срок действия сертификатов letsencrypt истекает через 3 месяца. Таким образом, сертификат SSL необходимо обновлять один раз в 3 месяца, чтобы сайт мог нормально функционировать. Используйте следующую команду, чтобы легко установить certbot.
  4. sudo snap install --classic certbot
  5. Certbot установлен в каталог / snap / bin / certbot. Чтобы запустить исполняемый файл certbot через командную строку без указания его полного пути, выполните следующую команду. Он создает символическую ссылку между snap / bin / certbot и каталогом / usr / bin / certbot, тем самым позволяя исполняемому файлу certbot запускаться в интерфейсе командной строки без указания его полного пути.
  6. sudo ln -s / оснастка / bin / certbot / usr / bin / certbot
  7. Настройте экземпляр Nginx в системе с помощью следующей команды. Есть еще одна команда, которая напрямую нацелена на конкретный домен при настройке SSL. Вторая команда, указанная ниже, устанавливает и настраивает сертификат SSL для указанного доменного имени.
  8. sudo certbot -nginx
    certbot --nginx -d nucuta.ком
  9. Выполните следующую команду, чтобы смоделировать процесс обновления. Фактическая команда без флага -dry-run выполняется автоматически, поскольку certbot настраивает задание cron для автоматического запуска команды через несколько раз позже. Требуется испытание на пробный запуск, чтобы убедиться, что certbot может обновлять сертификаты без каких-либо препятствий.
  10. sudo certbot обновить --dry-run

Заключение

Настроить несколько доменных имен на веб-сервере Nginx довольно просто, поскольку он предоставляет множество опций, облегчающих этот процесс. Certbot позволяет устанавливать SSL-сертификаты для нескольких доменов для веб-сервера Nginx. В качестве SSL-сертификата в этом руководстве используется letsencrypt, который бесплатно предоставляет SSL-сертификаты для любого количества доменов. Единственным недостатком letsencrypt является его короткий срок службы, но certbot гарантирует, что это не будет проблемой для веб-мастеров с его автоматическим процессом обновления.

Добавьте жесты мыши в Windows 10 с помощью этих бесплатных инструментов
В последние годы компьютеры и операционные системы сильно эволюционировали. Было время, когда пользователям приходилось использовать команды для навиг...
Контроль и управление перемещением мыши между несколькими мониторами в Windows 10
Диспетчер мыши с двумя дисплеями позволяет контролировать и настраивать движение мыши между несколькими мониторами, замедляя ее движения возле границы...
WinMouse позволяет настраивать и улучшать движение указателя мыши на ПК с Windows
Если вы хотите улучшить функции указателя мыши по умолчанию, используйте бесплатное ПО WinMouse. Он добавляет дополнительные функции, которые помогут ...