Установка и Начальная Настройка Веб-Сервера Nginx на CentOS/RHEL

Nginx — это веб-сервер и прокси-сервер с открытым исходным кодом для HTTP, SMTP, POP3 и IMAP протоколов, с основным акцентом на высокое распараллеливание, производительность и низкое потребление оперативной памяти.

В этом руководстве объясняется процесс установки и начальной конфигурации веб-сервера Nginx на операционных системах CentOS/RHEL.

Добавляем репозиторий Nginx

Если Вы хотите установить последнюю версию nginx со всеми функционалом и исправлениями, то Вам рекомендуется использовать непосредственно официальный репозиторий nginx для yum.

В стандартных репозиториях очень часто хранятся довольно устаревшие пакеты.

Для того, чтобы добавить репозиторий nginx в yum, создайте файл /etc/yum.repos.d/nginx.repo и скопируйте в него одну из следующих конфигураций.

Для CentOS:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

Для RHEL:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/rhel/$releasever/$basearch/
gpgcheck=0
enabled=1

Вручную поменяйте $releasever на «5» (для 5.x) либо на «6» (для 6.x), в зависимости от версии Вашей операционной системы.

Установка Nginx

Установите веб-сервер nginx с помощью yum:

# yum install nginx

Добавьте nginx в автозагрузку:

# chkconfig nginx on

Базовая настройка Nginx

Сделайте резервную копию конфигурационных файлов:

# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.back
# cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.back

Откройте файл конфигурации nginx /etc/nginx/nginx.conf и измените значение параметра worker_processes. Оно должно равняться количеству процессоров на Вашем сервере.

worker_processes 1;

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

# lscpu | grep '^CPU(s)'

Разрешите сжатие, раскомментировав следующую строку :

# gzip on;

Сохраните и закройте файл.

Отредактируйте файл /etc/nginx/conf.d/default.conf. Измените имя сервера:

server_name  example.com;

Сохраните и закройте файл. Запустите ngnix:

# service nginx start

Открытие фаервола для Nginx

Отредактируйте файл /etc/sysconfig/iptables, если Вы пользуетесь фаерволом. Добавьте следующую строку, перед строкой REJECT, для открытия порта 80:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

Сохраните и закройте файл. Перезапустите фаервол.

# service iptables restart

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

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

Вы должны увидеть страницу «Welcome to Nginx!«.

Если Вы видите эту страницу, значит Веб-Сервер Nginx успешно установлен и работает.

Дополнительная иформация

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

  • /etc/nginx/ — директория содержащая файлы настроек Nginx сервера;
  • /etc/nginx/conf.d/ — директория содержащая файлы настроек SSL и виртуальных хостов (vhost);
  • /etc/nginx/nginx.conf — основной файл настроек;
  • /var/log/nginx/error.log — логи ошибок;
  • /var/log/nginx/access.log — логи доступа;
  • /usr/share/nginx/html/ — корневая директория сайта по умолчанию (document root);
  • TCP 80 — HTTP порт по умолчанию для Nginx;
  • TCP 443 — HTTPS порт по умолчанию для Nginx.

Команды Nginx

# /etc/init.d/nginx start
# /etc/init.d/nginx stop
# /etc/init.d/nginx restart
# /etc/init.d/nginx condrestart
# /etc/init.d/nginx try-restart
# /etc/init.d/nginx force-reload
# /etc/init.d/nginx upgrade
# /etc/init.d/nginx reload
# /etc/init.d/nginx status
# /etc/init.d/nginx help
# /etc/init.d/nginx configtest