Как установить Nginx на CentOS 8

Как установить Nginx на CentOS 8

Nginx один из самых популярных веб-серверов в мире, который используют крупнейшие сайты на планете. В боольшинстве случаев он более производителен нежели Apache и может быть использован как веб-сервер или обратный прокси сервер(reverse proxy). В этой статье мы рассмотри установку Nginx на сервер под управлением CentOS 8. Вам понадобится сервер под CentOS 8, non-root пользователь с sudo привилегиями и активный файрвол.

Шаг 1. Установка Nginx на CentOS 8 сервер

Для установки Nginx на CentOS 8 мы воспользуемся пакетным менеджером dnf. Для этого выполним следующую команду в терминале:

sudo dnf install nginx

Во время установки вас попросят подтвердить установку Nginx, для этого необходимо ввести y на клавиатуре. После этого dnf установит Nginx и все необходимые для его работы пакеты. После установки выполните следующие команды для активации и запуска сервера:

sudo systemctl enable nginx
sudo systemctl start nginx

Также это позволит запускать Nginx после перезагрузки сервера.

Шаг 2. Настройка firewalld

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

sudo firewall-cmd --permanent --add-service=http

Проверим, выполнилась ли команда выше:

sudo firewall-cmd --permanent --list-all

Если всё прошло хорошо, то вы увидите следующее сообщение в консоли:

Output
public
  target: default
  icmp-block-inversion: no
  interfaces: 
  sources: 
  services: cockpit dhcpv6-client http ssh
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

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

sudo firewall-cmd --reload

На этом всё, ваш Nginx-сервер готов к работе.

Шаг 3. Проверка работы Nginx

Теперь мы можем протестировать работу Nginx под управлением сервера CentOS 8. Для этого откройте в вашем браузере http://ip-вашего-сервер-или.доменное-имя/

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

Если вы увидели эту страницу, то значит Nginx установлен и настроен правильно.

Шаг 4. Управление Nginx 

Для остановки Nginx необходимо выполнить следующую команду:

sudo systemctl stop nginx

Для запуска:

sudo systemctl start nginx

Для остановки, а затем запуска выполните:

sudo systemctl restart nginx

Для перезагрузки изменённых конфигов выполните:

sudo systemctl reload nginx

По-умолчанию Nginx настроен на автоматический запуск при запуске CentOS 8. Для отключение этой функции выполните:

sudo systemctl disable nginx

Для включения:

sudo systemctl enable nginx

Шаг 5. Знакомство с важными директориями и файлами Nginx

Контент

  • /usr/share/nginx/html - веб-контент содержится в данной директории (по-умолчанию содержит лишь один html-файл, который вы видели выше в статье), может быть изменён в настройках Nginx.

Настройки Nginx

  • /etc/nginx - директория с файлами конфигураций Nginx
  • /etc/nginx/nginx.conf - главный конфигурационный файл Nginx. Может быть отредактирован для внесения изменений в глобальные настройки Nginx.
  • /etc/nginx/conf.d/ - данная категория содержит конфигурационные файлы для server-blocks. Как правило каждый сайт на сервере имеет свой конфиг, например, your_website.conf

Логи Nginx

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

См. также: Установка Let's Encrypt для Nginx на Ubuntu 18.04

Данная статья является переводом, ссылка на оригинал.