# Изменение настроек nginx для виртуальных серверов

По умолчанию веб-сервер Apache работает в связке с nginx. Это обеспечивает более быструю загрузку веб-страниц и экономию серверных ресурсов. Информацию о том, как Apache и nginx работают по умолчанию, смотрите в разделе Apache и nginx.

Для любого из сайтов вы можете настроить индивидуальный метод взаимодействия Apache и nginx. А именно, вы можете:

- Указать режим работы nginx как прокси-сервера для Apache или как независимого сервера, обслуживающего все HTTP-запросы к сайтам.
- Указать, какой тип контента (статический или динамический) должен обрабатывать тот или иной сервер, когда nginx используется в качестве прокси-сервера.

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

Данные настройки находятся в панели клиента, на странице Сайты и домены > <имя домена> > Настройки Apache & nginx.

Примечание

Настройки, относящиеся к веб-серверу nginx доступны, только когда он включен.

На приведенных ниже схемах приведены все возможные конфигурации работы Apache в связке с nginx, а также комментарии об их преимуществах и недостатках. Обратите внимание на то, что при использовании только nginx запросы не могут достигать Apache.

## Обработка статического контента

Следующая таблица показывает, как происходит обработка запроса на GIF-файл размером 2 КБ в зависимости от конфигурации nginx.

Интеллектуальная обработка статических файлов включена |  | Это оптимальная конфигурация в плане производительности и надежности. Запрос передается веб-серверу Apache, который выдает в ответ только расположение файла. Поиск и доставку самого файла выполняет nginx.
Интеллектуальная обработка статических файлов отключена |  | nginx передает запросы и ответы без каких-либо изменений, что позволяет использовать данный режим для диагностики связанных с nginx неисправностей. Файл пересылается дважды: от Apache к nginx и от nginx к клиенту. Это может несколько снизить производительность, особенно в случае с большими файлами.
Расширение GIF входит в список Обрабатывать статические файлы с помощью nginx |  | Этот режим обеспечивает более быструю обработку статических файлов. Обратите внимание, что так как запросы никогда не доходят до веб-сервера Apache, они не проходят через его обработчики. Это означает, что, например, правила перезаписи или директивы `.htaccess` применяться не будут.

## Обработка динамического контента

Следующая таблица показывает, как будет происходить обработка РНР-файла в зависимости от конфигурации nginx.

Опция Обрабатывать PHP-файлы с помощью nginx отключена |  | Это оптимальная конфигурация в плане производительности и надежности. Запрос передается веб-серверу Apache, который исполняет файл и возвращает результат. В зависимости от заданных для сайта настроек хостинга веб-сервер Apache использует один из следующих обработчиков: FastCGI, CGI или модуль Apache. Кроме того, вы можете выбрать свою версию PHP для каждого сайта.
Опция Обрабатывать PHP-файлы с помощью nginx включена |  | nginx самостоятельно исполняет файл с помощью обработчика PHP-FPM. Обработчик PHP-FPM обладает расширенными возможностями FastCGI, что может улучшить производительность веб-приложений, особенно с большим количеством пользователей. Обратите внимание, что так как запросы никогда не доходят до веб-сервера Apache, они не проходят через его обработчики. Это означает, что некоторые веб-приложения могут работать с ошибками. Кроме того, не будут применяться `.htaccess`-директивы и правила перезаписи Apache.

Примечание

Опция Обрабатывать PHP-файлы с помощью nginx становится доступной только после того, как вы включите поддержку PHP-FPM для nginx. Как это сделать, смотрите в разделе Обработчики PHP.

## Добавление дополнительных директив nginx

Дополнительные директивы nginx для того или иного сайта можно указать в поле Дополнительные директивы nginx. При заполнении этого поля используйте такой же синтаксис, как в файле `nginx.conf`. Например, чтобы сжимать все передаваемые через прокси-сервер запросы с помощью gzip, добавьте следующую строку:

    gzip_proxied any;

Обратите внимание, что вашим клиентам поле Дополнительные директивы nginx не показывается.