На каком языке находятся файлы nginx conf?
Я хочу написать несколько более сложных условий в своих конфигурационных файлах Nginx, но я не уверен в синтаксисе и не могу найти документы, описывающие, что вы можете сделать за пределами основ в примерах, и я не могу найти это на форумах Nginx или в списке рассылки.
Например, возможно ли, чтобы у меня было условие unless
?
Ответы
Ответ 1
Так что я новичок в nginx, и у меня был такой же вопрос. Оказывается, синтаксис языка, как упоминалось выше, является обычным и на самом деле довольно простым. Синтаксис фиксируется в разделе в документах NGINX и повторяется здесь для удобства:
nginx состоит из модулей, которые управляются директивами, указанными в файле конфигурации. Директивы делятся на простые директивы и директивы блоков. Простая директива состоит из имени и параметров, разделенных пробелами, и заканчивается точкой с запятой (;). Директива блока имеет ту же структуру, что и простая директива, но вместо точки с запятой она заканчивается набором дополнительных инструкций, окруженных фигурными скобками ({и}). Если директива блока может иметь другие директивы внутри фигурных скобок, она называется контекстом (примеры: события, http, сервер и местоположение).
Директивы, размещенные в файле конфигурации вне любых контекстов, рассматриваются в основном контексте. События и директивы http находятся в основном контексте, сервере в http и местоположении на сервере.
Остальная строка после знака # считается комментарием.
Вкратце: все в конфигурационном файле NGINX является директивой, которая может ссылаться на переменную. Все директивы перечислены в алфавитном порядке здесь, и все переменные перечислены в алфавитном порядке здесь. Конфигурация NGINX управляется модулями, каждый из которых реализует определенную функциональность, и каждый модуль вносит директивы и переменные, которые становятся доступными для использования в конфигурации. Это.
Вот почему даже if
- который похож на ключевое слово, как на традиционном языке программирования, на самом деле является лишь директивой, предоставляемой модулем ngx_http_rewrite_module
.
Надеюсь это поможет!
PS. Также ознакомьтесь с https://devdocs.io/ и, в частности, https://devdocs.io/nginx, для значительно лучшего способа поиска/использования документации NGINX.
Ответ 2
Файлы конфигов Nginx написаны на их родном языке или синтаксисе. Я включил некоторые из нижеприведенных основ. Это мои личные заметки, сделанные мастерингом Nginx
Основной формат
основной файл разбивается на разделы
:
<section> {
<directive> <parameters>;
}
Глобальные параметры
Не определен в стандартном формате, описанном выше, он не имеет {} окружающего глобального раздела. Он находится в верхней части конфигурационного файла
Важные глобальные параметры
пользователя и группы, которые выполняются рабочими процессами. Если группа опущена, это равно тому, что пользователь использовал
worker_processes - началось число рабочих процессов. Они обрабатывают связи с клиентами. как правило, для нагрузок, связанных с процессором, это должно равняться числу процессоров, а для I/O связанных нагрузок раз это на 1,5 или 2
error_log - местоположения error_logs. могут быть перезаписаны в директивах. Второй параметр указывает уровень отладки журнала (доступен только при настройке модуля отладки при компиляции), информация, уведомление, предупреждение, ошибка, крит, предупреждение и появление.
pid - файл, в котором записывается идентификатор процесса основного процесса, перезаписывая скомпилированный по умолчанию.
worker_connections - настраивает максимальное количество одновременных подключений, которые рабочий процесс может открыть. Особенно важно на обратных прокси-серверах - для повышения этого количества одновременных подключений может потребоваться дополнительная настройка на уровне операционной системы.
Использование включенных файлов можно использовать в любом месте в файле конфигурации
include/opt/local/etc/nginx/mime.types;
Подстановочный знак может отображаться в пути для соответствия нескольким файлам: include/opt/local/etc/nginx/vhost/*.conf;
Конфигурационный файл можно легко протестировать, вызвав NGINX следующим образом: nginx -t -c
Секция Http будет наиболее часто используемой секцией.
Ответ 3
Файлы конфигурации Nginx записываются на языке (если вы хотите его назвать), который был разработан и реализован для файлов конфигурации Nginx. Скорее всего, документация является единственной доступной ссылкой за пределами самого источника. Я бы начал с публикации сообщения на одном из форумах Nginx или присоединении к список рассылки Nginx и просят там. Конечно, вы также можете захватить источник и начать там.
Удачи.