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

Пошаговое руководство по установке и настройке Nginx веб-сервера.
/ Системное администрирование Сервисы CentOS

Установите Nginx на CentOS: Пошаговое руководство по установке и настройке Nginx веб-сервера

Nginx (произносится как "Engine-X") — это высокопроизводительный HTTP-сервер и обратный прокси-сервер с открытым исходным кодом. Он стал популярным благодаря своей высокой производительности, стабильности, богатому набору функций и низкому потреблению ресурсов.

Шаг 1: Подготовка системы

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

sudo yum update

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

Шаг 2: Установка Nginx

По умолчанию Nginx недоступен в стандартных репозиториях CentOS, поэтому вам нужно будет добавить репозиторий EPEL (Extra Packages for Enterprise Linux).

sudo yum install epel-release

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

sudo yum install nginx

Шаг 3: Запуск и автозапуск Nginx

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

sudo systemctl start nginx
sudo systemctl enable nginx

Чтобы убедиться, что Nginx успешно запущен, вы можете проверить статус сервиса:

sudo systemctl status nginx

Шаг 4: Настройка межсетевого экрана (firewalld)

Если на вашем сервере включен firewalld, вы должны открыть порты, используемые Nginx (80 для HTTP и 443 для HTTPS):

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Шаг 5: Проверка установки Nginx

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

Шаг 6: Настройка Nginx

Настройки Nginx находятся в директоpии `/etc/nginx`. Основной файл конфигурации — это `nginx.conf`.

Пример базового файла конфигурации:

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

sudo nano /etc/nginx/nginx.conf

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

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
events {
    worker_connections 1024;
}
http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;
    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;
    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;
    include /etc/nginx/conf.d/*.conf;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm;
        }
        error_page  500 502 503 504 /50x.html;
            root   /usr/share/nginx/html;
        }
    }
}

Виртуальные хосты

Виртуальные хосты позволяют вам обслуживать несколько доменов с одного сервера. Для добавления нового виртуального хоста создайте новый файл конфигурации в директории `/etc/nginx/conf.d/`, например, `example.com.conf`.

sudo nano /etc/nginx/conf.d/example.com.conf

Пример содержимого файла:

server {
    listen 80;
    server_name example.com www.example.com;
    location / {
        root /var/www/example.com/html;
        index index.html index.htm;
    }
    error_page 404 /404.html;
    }
    error_page 500 502 503 504 /50x.html;
    }
}

Перезагрузка Nginx

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

sudo systemctl restart nginx

Заключение

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

Поиск