Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
linux:nginx [2024/12/29 04:05] admin [Журналы] |
linux:nginx [2024/12/29 06:31] (текущий) admin |
||
---|---|---|---|
Строка 2: | Строка 2: | ||
===== Сведения ===== | ===== Сведения ===== | ||
+ | |||
+ | < | ||
+ | < | ||
Эффективное использование ресурсов, | Эффективное использование ресурсов, | ||
Используется как веб так и прокси сервер.\\ | Используется как веб так и прокси сервер.\\ | ||
Строка 7: | Строка 10: | ||
- | === Динамический контент | + | **Динамический контент**\\ |
Nginx не имеет возможности самостоятельно обрабатывать запросы к динамическому контенту (например php), для этого он передает запрос внешнему процессу (например [[: | Nginx не имеет возможности самостоятельно обрабатывать запросы к динамическому контенту (например php), для этого он передает запрос внешнему процессу (например [[: | ||
На каждый запрос создается отдельное соединение с процессом. (плюс в экономии на статических запросах).\\ | На каждый запрос создается отдельное соединение с процессом. (плюс в экономии на статических запросах).\\ | ||
Строка 13: | Строка 16: | ||
- | === Интерпретация запросов | + | **Интерпретация запросов**\\ |
В отличии от сервера [[: | В отличии от сервера [[: | ||
Во многом из-за своего Альтер Эго в роли прокси сервера, | Во многом из-за своего Альтер Эго в роли прокси сервера, | ||
- | === Модули | + | **Модули**\\ |
В отличии от [[: | В отличии от [[: | ||
- | === Совместное использование с Apache | + | **Совместное использование с Apache**\\ |
Очень частая практика использования обоих серверов вместе, | Очень частая практика использования обоих серверов вместе, | ||
Nginx самостоятельно обслуживает статический контент а динамический передает [[: | Nginx самостоятельно обслуживает статический контент а динамический передает [[: | ||
в такой конфигурации можно ставить несколько бэкендов, | в такой конфигурации можно ставить несколько бэкендов, | ||
+ | </ | ||
Строка 126: | Строка 130: | ||
} | } | ||
</ | </ | ||
- | |||
- | |||
- | ==== Настройка SSL сертификата ==== | ||
- | FIXME☝ | ||
Строка 268: | Строка 268: | ||
- | ==== Context ==== | + | ==== Context |
Конфиг содержит древовидную структуру, | Конфиг содержит древовидную структуру, | ||
- | === Main === | + | < |
+ | < | ||
+ | |||
+ | **Main**\\ | ||
Контекст **Main** базовый, | Контекст **Main** базовый, | ||
- | === Events | + | **Events**\\ |
Находится в main, определяет глобальные параметры, | Находится в main, определяет глобальные параметры, | ||
Как правило метод для обработки соединения выбирается автоматически, | Как правило метод для обработки соединения выбирается автоматически, | ||
- | === Http === | + | **Http**\\ |
Содержит все директивы и другие контексты, | Содержит все директивы и другие контексты, | ||
Так же является дочерним от main, одноранговые с events, не вкладываются друг в друга\\ | Так же является дочерним от main, одноранговые с events, не вкладываются друг в друга\\ | ||
Строка 287: | Строка 290: | ||
- | === Server | + | **Server**\\ |
Обычно объявляется внутри http, может быть объявлен несколько раз. Виртуальный хост, набор параметров для обработки запросов, | Обычно объявляется внутри http, может быть объявлен несколько раз. Виртуальный хост, набор параметров для обработки запросов, | ||
Строка 295: | Строка 298: | ||
- | === Location | + | **Location**\\ |
Выбирается исходя из клиентского запроса, | Выбирается исходя из клиентского запроса, | ||
Так же, их может быть несколько, | Так же, их может быть несколько, | ||
Строка 302: | Строка 305: | ||
- | === upstream | + | **upstream**\\ |
Используется для определения пула серверов для проксирования. Находится в блоке " | Используется для определения пула серверов для проксирования. Находится в блоке " | ||
Строка 308: | Строка 311: | ||
- | === Другие | + | **Другие**\\ |
**if** \\ | **if** \\ | ||
Позволяет настроить условное ветвление\\ | Позволяет настроить условное ветвление\\ | ||
Строка 315: | Строка 318: | ||
Позволяет задать ограничения на использование HTTP-методов, | Позволяет задать ограничения на использование HTTP-методов, | ||
+ | </ | ||
Строка 378: | Строка 382: | ||
Перенаправление логов в stdout\\ | Перенаправление логов в stdout\\ | ||
" | " | ||
- | Даже при такой конфигурации, | + | Даже при такой конфигурации, |
<code bash> | <code bash> | ||
(...) | (...) | ||
Строка 416: | Строка 420: | ||
* **alert** – Оповещения. Действие должно быть принято немедленно. | * **alert** – Оповещения. Действие должно быть принято немедленно. | ||
* **emerg** – Чрезвычайная ситуация. Система находится в нерабочем состоянии. | * **emerg** – Чрезвычайная ситуация. Система находится в нерабочем состоянии. | ||
+ | |||
+ | |||
+ | |||
+ | ==== Параметры ==== | ||
+ | |||
+ | < | ||
+ | < | ||
+ | |||
+ | **worker_processes** - | ||
+ | |||
+ | **worker_connections** - | ||
+ | |||
+ | **worker_cpu_affinity** - | ||
+ | |||
+ | **** - | ||
+ | |||
+ | |||
+ | </ | ||
Строка 546: | Строка 568: | ||
</ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | < | ||
+ | |||
+ | <code bash> | ||
+ | http { | ||
+ | server { | ||
+ | (...) | ||
+ | client_body_temp_path / | ||
+ | proxy_temp_path / | ||
+ | fastcgi_temp_path / | ||
+ | uwsgi_temp_path / | ||
+ | scgi_temp_path / | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | </ | ||