Skip to content

Latest commit

 

History

History
40 lines (27 loc) · 2.43 KB

nginx_configuration.md

File metadata and controls

40 lines (27 loc) · 2.43 KB

Настройка Nginx

Расширение конфигруации Nginx

Иногда вам может потребоваться расширить конфиг Nginx для добавления редиректов, HTTP-авторизации и пр. Для этого вы можете скопировать ваши файлы конфигурации в директорию /etc/nginx/vhost.common.d в процессе сборки собственного образа контейнера.

Чтобы предотвратить возможность утечки ваших конфигов Nginx, следует прибечь к одному из вариантов организации вашего репозитория:

  1. Разделить файлы веб-приложения и конфигурации Nginx, используя переменную окружения WEBROOT
  2. Добавить конфиг Nginx, запрещающий прямой доступ к файлам внутри директории вашей конфигурации Nginx
  3. Исключить копирование конфигов Nginx внутрь корневой директории веб-сервера при сборке в вашем Dockerfile

Заголовки REAL IP / X-Forwarded-For

Если вы запускаете ваш контейнер за балансировщиком нагрузки, как например, ELB в AWS, вам неообходимо сконфигурировать Nginx таким образом, чтобы получать настоящий IP адрес не от балансировщика, а используя заголовок X-Forwarded-For. Мы добавили две полезных переменных окружения для этого.

-e "REAL_IP_HEADER=1"
-e "REAL_IP_FROM=YOUR_CIDR_BLOCK"

Например:

docker run -d -e "REAL_IP_HEADER=1" -e "REAL_IP_FROM=10.1.0.0/16" spaceonfire/nginx-php-fpm:latest

Read timeout

Чтобы изменить таймаут чтения, укажите настройку NGINX_READ_TIMEOUT в переменных окружения, например:

docker run -d -e NGINX_READ_TIMEOUT=300 spaceonfire/nginx-php-fpm:latest

Для не продакшн окружений значение таймаута автоматически выставляется на 9999.