Как установить Nginx в Ubuntu 18.04

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

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

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

В этом руководстве описаны шаги, необходимые для установки Nginx на компьютере с Ubuntu 18.04.

Подготовка

Перед тем, как начать работу с руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo и у вас нет Apache или какого-либо другого веб-сервера, работающего на порту 80 или 443 .

Установка Nginx

Пакеты Nginx доступны в репозиториях Ubuntu по умолчанию. Установка довольно проста.

Начнем с обновления списка пакетов, а затем установим Nginx:

sudo apt updatesudo apt install nginx

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

sudo systemctl status nginx

Результат будет выглядеть примерно так:

● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2018-04-29 06:43:26 UTC; 8s ago
     Docs: man:nginx(8)
  Process: 3091 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 3080 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 3095 (nginx)
    Tasks: 2 (limit: 507)
   CGroup: /system.slice/nginx.service
           ├─3095 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─3097 nginx: worker process

Настройка межсетевого экрана

Предполагая, что вы используете UFW для управления своим брандмауэром, вам необходимо открыть порты HTTP ( 80 ) и HTTPS ( 443 ). Вы можете сделать это, включив профиль Nginx Full, который включает правила для обоих портов:

sudo ufw allow 'Nginx Full'

Чтобы проверить тип статуса:

sudo ufw status

Результат будет выглядеть примерно так:

Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
Nginx Full (v6)            ALLOW       Anywhere (v6)

Проверить установку

Чтобы протестировать новую установку Nginx, откройте http://YOUR_IP в выбранном браузере, и вам будет представлена целевая страница Nginx по умолчанию, как показано на изображении ниже:

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

Вы можете управлять службой Nginx так же, как и любой другой службой systemd.

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

sudo systemctl stop nginx

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

sudo systemctl start nginx

Чтобы перезапустить службу Nginx :

sudo systemctl restart nginx

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

sudo systemctl reload nginx

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

sudo systemctl disable nginx

И чтобы снова включить его:

sudo systemctl enable nginx

Структура файла конфигурации Nginx и рекомендации

  • Все файлы конфигурации Nginx находятся в каталоге /etc/nginx .
  • Главный файл конфигурации Nginx — это /etc/nginx/nginx.conf .
  • Чтобы упростить поддержку конфигурации Nginx, рекомендуется создать отдельный файл конфигурации для каждого домена. У вас может быть столько файлов блоков сервера, сколько вам нужно.
  • Файлы блоков сервера Nginx хранятся в каталоге /etc/nginx/sites-available . Файлы конфигурации, найденные в этом каталоге, не используются Nginx, если они не связаны с каталогом /etc/nginx/sites-enabled .
  • Чтобы активировать серверный блок, вам необходимо создать символическую ссылку (указатель) из файла конфигурации sites в каталоге с sites-available каталог с поддержкой sites-enabled .
  • Рекомендуется следовать стандартному соглашению об именах, например, если ваше доменное имя mydomain.com ваш файл конфигурации должен называться /etc/nginx/sites-available/mydomain.com.conf
  • Каталог /etc/nginx/snippets содержит фрагменты конфигурации, которые можно включить в файлы блоков сервера. Если вы используете повторяющиеся сегменты конфигурации, вы можете преобразовать эти сегменты в фрагменты и включить файл фрагмента в блоки сервера.
  • Файлы журнала Nginx ( access.log и error.log ) находятся в каталоге /var/log/nginx . Рекомендуется иметь разные файлы access и журналов error для каждого блока сервера.
  • Вы можете установить корневой каталог документов домена в любое место. Наиболее распространенные места для webroot:
    • /home/<user_name>/<site_name>
    • /var/www/<site_name>
    • /var/www/html/<site_name>
    • /opt/<site_name>

Выводы

Поздравляем, вы успешно установили Nginx на свой сервер Ubuntu 18.04. Теперь вы готовы начать развертывание своих приложений и использовать Nginx в качестве веб-сервера или прокси-сервера. В настоящее время безопасный сертификат является обязательной функцией для всех веб-сайтов. Чтобы защитить свой веб-сайт с помощью бесплатного SSL-сертификата Let’s Encrypt, вы можете следовать этому руководству по защите Nginx с помощью Let’s Encrypt в Ubuntu 18.04 .

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

Оставьте комментарий