Инструменты пользователя

Инструменты сайта


nginx

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

nginx [2019/01/03 14:25]
nginx [2020/06/13 13:46] (текущий)
Строка 1: Строка 1:
 +====== nginx ======
 +
 +{{htmlmetatags>
 +metatag-description=(Мониторинг сервера nginx. Кэш (cache) в Nginx.)
 +}}
 +
 +  * Homepage: [[http://www.nginx.org|nginx]]
 +  * [[links#nginx|nginx links]]
 +
 +**nginx** (engine x; по-русски произносится как энджин-экс) можно использовать как [[HTTP]] -сервер, почтовый прокси-сервер и HTTP accelerator(reverse proxy). Применение nginx целесообразно прежде всего для статических веб-сайтов и как прокси-сервера перед динамическими сайтами. Nginx, как и Lighttpd, часто используют для отдачи статического содержимого, генерируемого «тяжёлым» веб-приложением, работающим под управлением другого веб-сервера. Архитектурно Nginx — это асинхронный сервер, который использует один главный процесс для приема соединений и несколько рабочих процессов для их обработки.
 +<note>nginx кэширует только ответы на запросы [[GET]].</note>
 +
 +  * Установка связки: [[Nginx + Apache + mod_rpaf]]
 +  * [[Nginx (reverse proxy) + Apache + DokuWiki]]
 +{{ ::nginx_01.jpg?nolink&600 |}}
 +===== Мониторинг сервера nginx =====
 +Можно включить для каждого виртуального домена статистику. Для этого в описание домена нужно добавить директиву location:<file>
 +location = /stat {
 +        stub_status on;
 +        access_log  off;
 +        allow 10.xxx.xxx.xxx;
 +        deny all;
 +}
 +</file>
 +Статистика будет доступна по адресу http://your.domen/stat . Статистика имеет вид:<file>
 +Active connections:
 +server accepts handled requests
 + 25 25 159 
 +Reading: 0 Writing: 1 Waiting: 5 
 +</file>
 +
 +====== Модули и директивы  ======
 +**Директивы:**
 +  * [[http://wiki.nginx.org/HttpProxyModule#proxy_max_temp_file_size|proxy_max_temp_file_size]] задаёт максимальный размер временного файла для проксированного ответа. "proxy_max_temp_file_size 0" запрещает создание файла.
 +  * [[http://nginx.org/ru/docs/http/ngx_http_core_module.html#client_body_buffer_size|client_body_buffer_size]], например можно задать 128k;
 +
 +**Модули:**
 +  * [[ngx_http_ssi_module]] - модуль поддержки языка [[SSI]].
 +  * [[http://nginx.org/ru/docs/http/ngx_http_proxy_module.html|ngx_http_proxy_module]] позволяет передавать запросы другому серверу. Настройка кеширования.
 +====== Кэш (cache) в Nginx ======
 +Модель [[http://nginx.org/ru/docs/http/ngx_http_proxy_module.html|ngx_http_proxy_module]] позволяет передавать запросы другому серверу и управляет настройкой кеширования.
 +
 +Nginx (с версии 0.7.44) умеет кэшировать, что позволяет повысить скорость отдачи часто используемых страниц. Nginx сохраняет сгенерированные страницы Apache в виде HTML- файлов на диске и при повторном обращении по одинаковому URL файл из кэша отдается клиенту. Ключом и именем файла в кэше является результат функции MD5 от проксированного URL.
 +
 +Настройку кэширования нужно проводить внимательно, потому что на динамических сайтах может быть утерян функционал, например, перестанут работать корзины на сайтах-магазинах. Если движок сайта([[CMS]]) известен можно попробовать найти готовые конфигурационный файлы для Nginx в интернете.
 +
 +<file>
 +proxy_pass_header Set-Cookie;
 +# разрешает передавать от проксируемого сервера клиенту запрещённые для передачи строки
 +proxy_ignore_headers "Expires" "Cache-Control";
 +# запрещает обработку некоторых строк заголовка из ответа проксированного сервера
 +</file>
 +
  
Kwork.ru - услуги фрилансеров от 500 руб.