Подключить репозиторий с помощью nginx ubuntu

Обновлено: 21.11.2024

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

В этом руководстве вы узнаете, как установить Nginx на сервер Ubuntu 18.04, а также о важных файлах и каталогах Nginx.

Предпосылки

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

Если у вас есть доступная учетная запись, для начала войдите в систему как пользователь без полномочий root.

Шаг 1. Установка Nginx

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

Поскольку это может быть ваше первое взаимодействие с системой пакетов apt в этом сеансе, обновите локальный индекс пакетов, чтобы у вас был доступ к самым последним спискам пакетов. После этого вы можете установить nginx:

После принятия процедуры apt установит Nginx и все необходимые зависимости на ваш сервер.

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

Перед тестированием Nginx необходимо настроить программное обеспечение брандмауэра, чтобы разрешить доступ к сервису. Nginx регистрируется как служба в ufw при установке, что упрощает предоставление доступа Nginx.

Перечислите конфигурации приложений, с которыми ufw умеет работать, введя следующее:

На выходе должен быть список профилей приложений:

В этом списке отображаются три профиля, доступные для Nginx:

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

Вы можете включить это, введя следующее:

Затем проверьте изменение:

Теперь, когда вы добавили соответствующее правило брандмауэра, вы можете проверить, работает ли ваш веб-сервер и может ли он правильно обслуживать контент.

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

В конце процесса установки Ubuntu 18.04 запускает Nginx. Веб-сервер уже должен быть запущен.

Проверьте систему инициализации systemd, чтобы убедиться, что служба запущена:

Эти выходные данные показывают, что служба успешно запущена. Однако лучший способ проверить это — запросить страницу у Nginx.

Вы можете получить доступ к целевой странице Nginx по умолчанию, чтобы убедиться, что программное обеспечение работает правильно, перейдя по IP-адресу вашего сервера. Если вы не знаете IP-адрес своего сервера, вы можете узнать его несколькими способами.

Попробуйте ввести в командной строке вашего сервера следующее:

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

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

Когда у вас есть IP-адрес вашего сервера, введите его в адресную строку браузера:

Вы должны получить целевую страницу Nginx по умолчанию:

Эта страница включена в Nginx для проверки правильности работы сервера.

Шаг 4. Управление процессом Nginx

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

Чтобы остановить веб-сервер, введите следующее:

Чтобы запустить веб-сервер, когда он остановлен, введите следующее:

Чтобы остановить и снова запустить службу, введите следующее:

Если вы просто вносите изменения в конфигурацию, часто можно перезагрузить Nginx, не прерывая подключения, а не перезапуская его. Для этого введите следующее:

По умолчанию Nginx настроен на автоматический запуск при загрузке сервера. Если это не то, что вам нужно, вы можете отключить это поведение, введя следующее:

Чтобы снова включить службу для запуска при загрузке, введите следующее:

Nginx теперь должен запускаться автоматически при повторной загрузке сервера.

Шаг 5. Настройка серверных блоков (рекомендуется)

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

Nginx в Ubuntu 18.04 по умолчанию включен один серверный блок, настроенный на обслуживание документов из каталога /var/www/html . Хотя это хорошо работает для одного сайта, это может стать громоздким, если вы размещаете несколько сайтов. Вместо изменения /var/www/html давайте создадим структуру каталогов внутри /var/www для нашего сайта your_domain, оставив /var/www/html в качестве каталога по умолчанию, который будет обслуживаться, если запрос клиента не соответствует ни одному из них. другие сайты.

Создайте каталог для your_domain следующим образом, используя флаг -p для создания всех необходимых родительских каталогов:

Затем назначьте владельца каталога с помощью переменной среды $USER:

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

Затем создайте образец страницы index.html с помощью nano или вашего любимого редактора:

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

Сохраните и закройте файл, когда закончите. Если вы использовали nano , вы можете выйти, нажав CTRL + X, затем Y и ENTER .

Чтобы Nginx мог обслуживать этот контент, необходимо создать серверный блок с правильными директивами. Вместо того, чтобы напрямую изменять файл конфигурации по умолчанию, создайте новый в /etc/nginx/sites-available/your_domain :

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

Обратите внимание, что мы изменили корневую конфигурацию на новый каталог, а server_name на доменное имя. Сохраните и закройте файл, когда закончите.

Далее включите файл, создав из него ссылку на каталог sites-enabled, из которого Nginx читает при запуске:

Два блока server теперь включены и настроены для ответа на запросы на основе их директив listen и server_name (подробнее о том, как Nginx обрабатывает эти директивы, можно прочитать здесь):

Чтобы избежать возможной проблемы с памятью хэш-контейнера, которая может возникнуть из-за добавления дополнительных имен серверов, необходимо настроить одно значение в файле /etc/nginx/nginx.conf. Откройте файл:

Сохраните и закройте файл, когда закончите.

Затем проверьте, чтобы ни в одном из ваших файлов Nginx не было синтаксических ошибок:

Если проблем нет, перезапустите Nginx, чтобы изменения вступили в силу:

Шаг 6. Знакомство с важными файлами и каталогами Nginx

Теперь, когда вы знаете, как управлять самой службой Nginx, вы должны потратить несколько минут, чтобы ознакомиться с несколькими важными каталогами и файлами.

Контент

  • /var/www/html : фактический веб-контент, который по умолчанию состоит только из страницы Nginx по умолчанию, которую вы видели ранее, обслуживается из каталога /var/www/html. Это можно изменить, изменив файлы конфигурации Nginx.

Конфигурация сервера

  • /etc/nginx : каталог конфигурации Nginx. Здесь находятся все файлы конфигурации Nginx.
  • /etc/nginx/nginx.conf : основной файл конфигурации Nginx. Это можно изменить, чтобы внести изменения в глобальную конфигурацию Nginx.
  • /etc/nginx/sites-available/ : каталог, в котором могут храниться серверные блоки для каждого сайта. Nginx не будет использовать файлы конфигурации, найденные в этом каталоге, если они не связаны с каталогом с поддержкой сайтов. Как правило, вся конфигурация серверного блока выполняется в этом каталоге, а затем включается путем ссылки на другой каталог.
  • /etc/nginx/sites-enabled/ : каталог, в котором хранятся включенные серверные блоки для каждого сайта. Как правило, они создаются путем ссылки на файлы конфигурации, находящиеся в каталоге, доступном для сайтов.
  • /etc/nginx/snippets : этот каталог содержит фрагменты конфигурации, которые можно включить в другое место в конфигурации Nginx. Потенциально повторяющиеся сегменты конфигурации являются хорошими кандидатами на преобразование в фрагменты.

Журналы сервера

  • /var/log/nginx/access.log : каждый запрос к вашему веб-серверу записывается в этот файл журнала, если Nginx не настроен иначе.
  • /var/log/nginx/error.log : все ошибки Nginx будут записываться в этот журнал.

Заключение

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

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

Хотите узнать больше? Присоединяйтесь к сообществу DigitalOcean!

Присоединяйтесь к нашему сообществу DigitalOcean, насчитывающему более миллиона разработчиков, бесплатно!Получайте помощь и делитесь знаниями в нашем разделе "Вопросы и ответы", находите руководства и инструменты, которые помогут вам расти как разработчику и масштабировать свой проект или бизнес, а также подписывайтесь на интересующие вас темы.

Nginx — один из самых популярных веб-серверов в мире. На нем размещаются одни из самых крупных и посещаемых сайтов в Интернете. Это упрощенный вариант, который можно использовать в качестве веб-сервера или обратного прокси-сервера.

В этом руководстве мы обсудим, как установить Nginx на сервер Ubuntu 20.04, настроить брандмауэр, управлять процессом Nginx и настроить серверные блоки для размещения более одного домена с одного сервера.

Предпосылки

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

Вы также можете зарегистрировать доменное имя перед выполнением последних шагов этого руководства. Чтобы узнать больше о настройке доменного имени в DigitalOcean, ознакомьтесь с нашим введением в DigitalOcean DNS.

Если у вас есть доступная учетная запись, для начала войдите в систему как пользователь без полномочий root.

Шаг 1. Установка Nginx

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

Поскольку это наше первое взаимодействие с системой пакетов apt в этом сеансе, мы обновим наш локальный индекс пакетов, чтобы иметь доступ к самым последним спискам пакетов. После этого мы можем установить nginx:

После принятия процедуры apt установит Nginx и все необходимые зависимости на ваш сервер.

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

Перед тестированием Nginx необходимо настроить программное обеспечение брандмауэра, чтобы разрешить доступ к сервису. Nginx регистрируется как служба в ufw при установке, что упрощает предоставление доступа Nginx.

Перечислите конфигурации приложений, с которыми ufw умеет работать, набрав:

Вы должны получить список профилей приложений:

Как видно из выходных данных, для Nginx доступно три профиля:

Рекомендуется включить наиболее строгий профиль, который по-прежнему будет разрешать трафик, который вы настроили. Прямо сейчас нам нужно разрешить трафик только через порт 80.

Вы можете включить это, набрав:

Вы можете проверить изменение, набрав:

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

В конце процесса установки Ubuntu 20.04 запускает Nginx. Веб-сервер уже должен быть запущен.

Мы можем проверить с помощью системы инициализации systemd, чтобы убедиться, что служба запущена, набрав:

Как подтверждает этот вывод, служба успешно запущена. Однако лучший способ проверить это — запросить страницу у Nginx.

Когда у вас есть IP-адрес вашего сервера, введите его в адресную строку браузера:

Вы должны получить целевую страницу Nginx по умолчанию:

Если вы находитесь на этой странице, ваш сервер работает правильно и готов к управлению.

Шаг 4. Управление процессом Nginx

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

Чтобы остановить веб-сервер, введите:

Чтобы запустить веб-сервер, когда он остановлен, введите:

Чтобы остановить и снова запустить службу, введите:

Если вы только вносите изменения в конфигурацию, Nginx часто может перезагружаться без разрыва соединений. Для этого введите:

По умолчанию Nginx настроен на автоматический запуск при загрузке сервера. Если это не то, что вам нужно, вы можете отключить это поведение, набрав:

Чтобы снова включить службу для запуска при загрузке, введите:

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

Шаг 5. Настройка серверных блоков (рекомендуется)

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

В Nginx в Ubuntu 20.04 по умолчанию включен один серверный блок, настроенный для обслуживания документов из каталога /var/www/html . Хотя это хорошо работает для одного сайта, это может стать громоздким, если вы размещаете несколько сайтов. Вместо изменения /var/www/html давайте создадим структуру каталогов внутри /var/www для нашего сайта your_domain, оставив /var/www/html в качестве каталога по умолчанию, который будет обслуживаться, если запрос клиента не соответствует ни одному из них. другие сайты.

Создайте каталог для your_domain следующим образом, используя флаг -p для создания всех необходимых родительских каталогов:

Затем назначьте владельца каталога с помощью переменной среды $USER:

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

Затем создайте образец страницы index.html с помощью nano или вашего любимого редактора:

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

Сохраните и закройте файл, нажав Ctrl+X для выхода, затем, когда будет предложено сохранить, нажмите Y и Enter .

Чтобы Nginx мог обслуживать этот контент, необходимо создать серверный блок с правильными директивами. Вместо того, чтобы напрямую изменять файл конфигурации по умолчанию, давайте создадим новый в /etc/nginx/sites-available/your_domain :

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

Обратите внимание, что мы изменили корневую конфигурацию на наш новый каталог, а server_name — на наше доменное имя.

Далее включим файл, создав из него ссылку на каталог sites-enabled, из которого Nginx читает при запуске:

Примечание. Nginx использует распространенную практику, называемую символическими ссылками или символическими ссылками, для отслеживания того, какие из ваших серверных блоков включены. Создание символической ссылки похоже на создание ярлыка на диске, чтобы впоследствии можно было удалить ярлык из каталога с включенными сайтами, сохраняя блок сервера в доступных для сайтов, если вы хотите его включить.

Два блока server теперь включены и настроены для ответа на запросы на основе их директив listen и server_name (подробнее о том, как Nginx обрабатывает эти директивы, можно прочитать здесь):

Чтобы избежать возможной проблемы с памятью хэш-контейнера, которая может возникнуть из-за добавления дополнительных имен серверов, необходимо настроить одно значение в файле /etc/nginx/nginx.conf. Откройте файл:

Сохраните и закройте файл, когда закончите.

Затем проверьте, чтобы ни в одном из ваших файлов Nginx не было синтаксических ошибок:

Если проблем нет, перезапустите Nginx, чтобы изменения вступили в силу:

Шаг 6. Знакомство с важными файлами и каталогами Nginx

Теперь, когда вы знаете, как управлять самой службой Nginx, вы должны потратить несколько минут, чтобы ознакомиться с несколькими важными каталогами и файлами.

Контент

  • /var/www/html : фактический веб-контент, который по умолчанию состоит только из страницы Nginx по умолчанию, которую вы видели ранее, обслуживается из каталога /var/www/html. Это можно изменить, изменив файлы конфигурации Nginx.

Конфигурация сервера

  • /etc/nginx : каталог конфигурации Nginx. Здесь находятся все файлы конфигурации Nginx.
  • /etc/nginx/nginx.conf : основной файл конфигурации Nginx. Это можно изменить, чтобы внести изменения в глобальную конфигурацию Nginx.
  • /etc/nginx/sites-available/ : каталог, в котором могут храниться серверные блоки для каждого сайта. Nginx не будет использовать файлы конфигурации, найденные в этом каталоге, если они не связаны с каталогом с поддержкой сайтов. Как правило, вся конфигурация серверного блока выполняется в этом каталоге, а затем включается путем ссылки на другой каталог.
  • /etc/nginx/sites-enabled/ : каталог, в котором хранятся включенные серверные блоки для каждого сайта. Как правило, они создаются путем ссылки на файлы конфигурации, находящиеся в каталоге, доступном для сайтов.
  • /etc/nginx/snippets : этот каталог содержит фрагменты конфигурации, которые можно включить в другое место в конфигурации Nginx. Потенциально повторяющиеся сегменты конфигурации являются хорошими кандидатами на преобразование в фрагменты.

Журналы сервера

  • /var/log/nginx/access.log : каждый запрос к вашему веб-серверу записывается в этот файл журнала, если Nginx не настроен иначе.
  • /var/log/nginx/error.log : все ошибки Nginx будут записываться в этот журнал.

Заключение

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

Если вы хотите создать более полный стек приложений, ознакомьтесь со статьей Как установить Linux, Nginx, MySQL, PHP (стек LEMP) в Ubuntu 20.04.

Хотите узнать больше? Присоединяйтесь к сообществу DigitalOcean!

Присоединяйтесь к нашему сообществу DigitalOcean, насчитывающему более миллиона разработчиков, бесплатно!Получайте помощь и делитесь знаниями в нашем разделе "Вопросы и ответы", находите руководства и инструменты, которые помогут вам расти как разработчику и масштабировать свой проект или бизнес, а также подписывайтесь на интересующие вас темы.

Nginx – это бесплатное приложение Linux с открытым исходным кодом для веб-серверов. Он работает как обратный прокси-сервер, направляя веб-трафик на определенные серверы.

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

Это руководство поможет вам установить Nginx в Ubuntu 20.04 Linux (Focal Fossa).

  • Система под управлением Ubuntu 20.04 Linux
  • Учетная запись пользователя с правами sudo или root
  • Доступ к окну/командной строке терминала (щелкните Действия > Поиск > введите Терминал)

Шаг 1. Обновите репозитории программного обеспечения

Важно обновить списки репозиториев перед установкой нового программного обеспечения. Это поможет убедиться, что установлены последние обновления и исправления.

Откройте окно терминала и введите следующее:

Подождите, пока процесс завершится.

Шаг 2. Установите Nginx из репозиториев Ubuntu

Nginx включен в репозитории Ubuntu 20.04 по умолчанию. Установите его, введя следующую команду:

Примечание. Если система выдает ошибку, связанную с файлом блокировки, см. советы по устранению ошибки «Не удалось получить блокировку /Var/Lib/Dpkg/Lock».

Шаг 3. Проверка установки

Убедитесь, что Nginx установлен правильно, проверив версию программного обеспечения. Введите следующее:

В системе должна отображаться версия программного обеспечения Nginx.

Шаг 4. Управление службой Nginx

Поведение Nginx можно настроить. Используйте это для запуска или остановки Nginx, а также для включения или отключения Nginx при загрузке.

Начните с проверки состояния службы Nginx:

Если в статусе отображается активно (работает), Nginx уже запущен. Нажмите CTRL + Z, чтобы закрыть экран состояния.

Если Nginx не запущен, используйте следующую команду для запуска службы Nginx:

Чтобы настроить загрузку Nginx при запуске системы, введите следующее:

Чтобы остановить службу Nginx, введите следующее:

Чтобы предотвратить загрузку Nginx при загрузке системы:

Чтобы перезагрузить службу Nginx (используется для применения изменений конфигурации):

Для жесткого перезапуска Nginx:

Шаг 5. Разрешите трафик Nginx

Nginx требуется доступ через брандмауэр системы. Для этого Nginx устанавливает набор профилей для Ubuntu по умолчанию ufw (UnComplicated Firewall).

Начните с отображения доступных профилей Nginx:

Система должна отобразить следующее:

Примечание. Могут быть перечислены и другие приложения. Их можно игнорировать.

Чтобы предоставить Nginx доступ через брандмауэр Ubuntu по умолчанию, введите следующее:

Система должна отображать обновленные правила .

Обновите настройки брандмауэра, введя:

Чтобы разрешить оба варианта, введите:

Шаг 6. Протестируйте Nginx

Убедитесь, что служба Nginx запущена, как описано в шаге 4. Откройте веб-браузер и перейдите по следующему веб-адресу:

Система должна отобразить страницу приветствия Nginx.

Примечание. Если система имеет определенное имя хоста или IP-адрес, вместо него можно использовать его.

Если в системе нет графического интерфейса, страницу приветствия Nginx можно загрузить в терминал с помощью curl:

Система должна отобразить HTML-код страницы приветствия Nginx.

Шаг 7. Настройте блок сервера (необязательно)

В Nginx блок сервера — это конфигурация, которая работает как отдельный сервер. По умолчанию в Nginx предварительно настроен один серверный блок.

Он расположен в /var/www/html. Однако его можно настроить с несколькими серверными блоками для разных сайтов.

1. Создайте каталог для тестового домена

В окне терминала создайте новый каталог, введя следующее:

2. Настройка прав собственности и разрешений

Используйте chmod для настройки правил владения и разрешений:

Примечание. Прочтите нашу статью, чтобы узнать, как рекурсивно использовать chmod.

3. Создайте файл index.html для блока сервера

Откройте index.html для редактирования в текстовом редакторе по вашему выбору (мы будем использовать текстовый редактор Nano):

В текстовом редакторе введите следующий код HTML:

Нажмите CTRL + o, чтобы сохранить изменения, затем CTRL + x, чтобы выйти.

4. Создать конфигурацию блока сервера Nginx

Откройте файл конфигурации для редактирования:

Введите следующий код:

5. Создайте символическую ссылку для чтения Nginx при запуске

Создайте символическую ссылку между блоком сервера и каталогом запуска, введя следующее:

6. Перезапустите службу Nginx

Перезапустите Nginx, выполнив следующую команду:

7. Протестируйте конфигурацию

Система должна сообщить, что синтаксис файла конфигурации в порядке и проверка файла конфигурации прошла успешно.

8. Измените файл hosts (необязательно)

Отобразите IP-адрес системы с помощью следующей команды:

Запишите отображаемый IP-адрес.

Затем откройте /etc/hosts для редактирования:

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

Замените 127.0.0.1 на указанный выше IP-адрес. Нажмите CTRL + o, чтобы сохранить изменения, затем CTRL + x, чтобы выйти.

Вы должны увидеть сообщение, которое вы ввели в Части 3.

Важные расположения файлов Nginx

По умолчанию Nginx хранит различные файлы конфигурации и журналов в следующих местах:

  • /var/www/html — содержимое веб-сайта, которое видят посетители.
  • /etc/nginx — расположение основных файлов приложения Nginx.
  • /etc/nginx/nginx.conf — основной файл конфигурации Nginx.
  • /etc/nginx/sites-available — список всех веб-сайтов, настроенных с помощью Nginx.
  • /etc/nginx/sites-enabled — список веб-сайтов, активно обслуживаемых Nginx.
  • /var/log/nginx/access.log — журналы доступа, отслеживающие каждый запрос к вашему серверу.
  • /var/log/ngins/error.log — журнал любых ошибок, сгенерированных в Nginx.

Теперь у вас должна быть работающая установка Nginx в Ubuntu 20.04.В качестве бонуса у вас должно быть введение в настройку блока сервера Nginx.

Если вы собираетесь использовать Nginx в качестве обратного прокси-сервера, ознакомьтесь с нашей статьей «Как настроить Nginx в качестве обратного прокси-сервера».

Nginx — произносится как «Engine X» — это серверная утилита с открытым исходным кодом. Он был разработан для работы в качестве обратного прокси-сервера, перехватывая клиентские запросы и направляя их на соответствующий сервер.

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

Это руководство поможет вам настроить и установить Nginx в Ubuntu 18.04 (Bionic Beaver).

  • Система под управлением Ubuntu 18.04
  • Учетная запись пользователя с правами sudo
  • Утилита диспетчера пакетов apt, включенная по умолчанию
  • UFW, или простой брандмауэр, включенный по умолчанию
  • SSH-доступ

Шаги по установке Nginx в Ubuntu

Обновление репозиториев программного обеспечения

Войдите на свой сервер через SSH как пользователь root

Перед установкой нового программного обеспечения настоятельно рекомендуется обновить локальную базу данных программного обеспечения. Обновление помогает убедиться, что вы устанавливаете новейшее программное обеспечение с лучшими исправлениями.

Введите следующее:

Подождите, пока процесс завершится.

Установите Nginx в Ubuntu

Введите следующее, чтобы установить Nginx в Ubuntu:

Системе может потребоваться некоторое время для загрузки пакетов программного обеспечения и их установки. Позвольте ему завершиться, прежде чем двигаться дальше.

Убедитесь, что служба Nginx запущена

Используйте следующую команду, чтобы проверить состояние службы Nginx:

Система должна вернуть список информации о службе Nginx. Активная строка показывает, запущена служба или нет. Если вам нужно запустить службу, используйте следующее:

Вы также можете использовать следующие команды вместо start:

  • sudo systemctl stop nginx — останавливает службу Nginx
  • sudo systemctl enable nginx — включает загрузку Nginx при запуске
  • sudo systemctl disable nginx — предотвращает загрузку Nginx при запуске

Разрешить трафик Nginx через брандмауэр

Создать список правил брандмауэра можно с помощью следующей команды:

Это должно создать список профилей приложений. В списке вы должны увидеть четыре записи, относящиеся к Nginx:

Чтобы проверить состояние брандмауэра, используйте следующую команду:

Примечание. Вы также можете создать правило, разрешающее весь трафик через порт 80. Но это может сделать вашу систему уязвимой. Лучше всего создать правило, разрешающее только тот трафик, который вам нужен.

Протестируйте Nginx в веб-браузере

Откройте веб-браузер, например Firefox.

Введите IP-адрес вашей системы в адресную строку или введите localhost.

В вашем браузере должна появиться страница, приветствующая вас в Nginx.

Примечание. Вы можете проверить IP-адрес вашей системы в окне терминала с помощью команды: ip a

Определить серверные блоки

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

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

По умолчанию основной файл конфигурации Nginx находится в /etc/nginx/nginx.conf. Файлы конфигурации блока сервера находятся в /etc/nginx/sites-available.

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

Это должно открыть файл конфигурации по умолчанию в текстовом редакторе Vi, который должен выглядеть примерно так:

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

Создать образец блока сервера

Настроить файл HTML

Полезно ознакомиться с образцом конфигурации. В окне терминала введите следующую команду, чтобы создать «тестовый» каталог для работы:

Создайте и откройте базовый индексный файл HTML для работы в качестве тестовой веб-страницы:

В текстовом редакторе Vi (при желании вы можете заменить его другим текстовым редактором) введите следующее:

Сохраните файл и выйдите.

Настройка простого блока сервера

Используйте следующую команду, чтобы создать новый файл блока сервера для нашего тестового веб-сайта:

Это должно запустить текстовый редактор Vi и создать новый файл блока сервера.
Введите следующие строки в текстовый файл:

Это указывает Nginx искать файлы в каталоге /var/www/example и использовать созданный нами файл index.html в качестве главной страницы веб-сайта.
Сохраните файл и выйдите. .

Создайте символическую ссылку для активации блока сервера

В окне терминала введите следующую команду:

Это создаст ссылку и активирует ваш тестовый веб-сайт в Nginx. Перезапустите службу Nginx, чтобы применить изменения:

Начать тестирование

Nginx должен перехватить запрос и отобразить текст, который мы ввели в файл HTML.

В этом руководстве вы узнали, как настроить, настроить и установить Nginx в Ubuntu 18.04.

Nginx — это мощный инструмент для управления серверами и веб-трафиком. Он настроен для таких задач, как балансировка нагрузки или работа в качестве обратного прокси-сервера.

Читайте также: