Главный файл конфигурации nginx

Рассмотрим главный конфигурационный файл nginx — /etc/nginx/nginx.conf .

Удаление стандартного файла настроек

Файл nginx.conf создаваемый по умолчанию, можно смело удалять, проще написать свой, чем править существующий.

Удаляем дефолтный файл rm -f /etc/nginx/nginx.conf
ls -la /etc/nginx

Мы удали и проверили что файл действительно удалился. Теперь создадим новый файл /etc/nginx/nginx.conf и проверим что он создался.

Создаем свой файл touch /etc/nginx/nginx.conf
ls -la /etc/nginx

Готовый конфигурационный файл nginx

# Пользователь сервера
user nginx; 

# Рабочие процессы & Приоритет процессов 
worker_processes auto; 
worker_priority -5; 

# Лог-файл ошибок & Pid-файл
error_log /var/log/nginx/error.log crit; 
pid /var/run/nginx.pid; 
 
events {
    # Максимально возможное кол-во соединений
    # Прием максимально возможного кол-ва соединений
    # Метод обработки соединений
    worker_connections 1024; 
    multi_accept on;
    use epoll; 
}
 
http {

    include mime.types; 
    default_type application/octet-stream; 

    # Активация системного вызова sendfile 
    # Ограничение объема данных за один вызов
    # Заголовок ответа и начало файла одним пакетом
    
    sendfile on; 
    sendfile_max_chunk 128k; 
    tcp_nopush on; 

    # Буферизация keep-alive соединений
    # Таймаут в течении которого поддерживается keep-alive соединение
    # Максимальное число запросов keep-alive соединения
    
    tcp_nodelay on; 
    keepalive_timeout 10; 
    keepalive_requests 100; 

    # Закрывать соединения для переставших отвечать клиентов
    # Таймаут для чтения тела запроса от клиента
    # Таймаут для чтения заголовка запроса от клиента    
    reset_timedout_connection on;
    client_body_timeout 5; 
    client_header_timeout 5; 

    # Размер буфера для заголовка запроса от клиента
    # Дополнительные буферы для больших запросов
    # Размер буфера для чтения тела запроса от клиента
    # Максимальный размер запроса клиента
    # Таймаут передачи ответа для клиента
    
    client_header_buffer_size 2k; 
    large_client_header_buffers 2 2k; 
    client_body_buffer_size 256k; 
    client_max_body_size 13m; 
    send_timeout 3; 

    # Отключение логов доступа
    # Отключение версии сервер
    
    access_log off;
    server_tokens off; 
 
    # Подключение сайтов 
    include /etc/nginx/sites-enabled/*.*;

}

Запуск с новыми конфигурациями

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

Команда sudo nginx -t

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

Команда sudo nginx -s reload

Команда systemctl status nginx

При запуске может вылетить ошибка, если она есть просто перезагрузите весь сервер

Команда sudo reboot