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

Установить Nginx на CentOS 7

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

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

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

Из этого руководства вы узнаете, как установить и управлять Nginx на компьютере с CentOS 7.

Предпосылки

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

Установка Nginx на CentOS

Чтобы установить Nginx на сервер CentOS, выполните следующие действия:

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

     sudo yum install epel-release
  2. Установите Nginx, введя следующую команду yum:

     sudo yum install nginx

    Если вы впервые устанавливаете пакет из репозитория EPEL, yum может предложить вам импортировать ключ EPEL GPG:

     Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Importing GPG key 0x352C64E5: Userid : "Fedora EPEL (7) " Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5 Package : epel-release-7-9.noarch (@extras) From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Is this ok [y/N]:

    В этом случае введите y и нажмите Enter .

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

     sudo systemctl enable nginx sudo systemctl start nginx

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

     sudo systemctl status nginx

    Вывод должен выглядеть примерно так:

     ● nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2018-03-12 16:12:48 UTC; 2s ago Process: 1677 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 1675 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 1673 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 1680 (nginx) CGroup: /system.slice/nginx.service ├─1680 nginx: master process /usr/sbin/nginx └─1681 nginx: worker process
  4. Если ваш сервер защищен брандмауэром, вам необходимо открыть оба порта: HTTP ( 80 ) и HTTPS ( 443 ).

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

     sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
  5. Чтобы проверить установку Nginx, откройте http://YOUR_IP в выбранном вами браузере, и вы увидите страницу приветствия Nginx по умолчанию, как показано на рисунке ниже:

    Целевая страница Nginx CentOS

Управление службой Nginx с помощью systemctl

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

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

 sudo systemctl stop nginx

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

 sudo systemctl start nginx

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

 sudo systemctl restart nginx

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

 sudo systemctl reload nginx

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

 sudo systemctl disable nginx

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

 sudo systemctl enable nginx

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

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

Заключение

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

В наши дни наличие сертификата безопасности — обязательная функция для любого веб-сайта. Чтобы защитить свой сайт с помощью бесплатного SSL-сертификата Let's Encrypt, ознакомьтесь с нашим руководством по защите Nginx с помощью Let's Encrypt в CentOS 7 .

nginx centos

Эта публикация является частью серии «Установка стека LEMP в CentOS 7» .
Другие посты в этой серии:

Не используете CentOS 7?
Выберите другую ОС:
центос 8 дебиан 10 дебиан 9 убунту 16.04 убунту 18.04 убунту 20.04

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *