代码之家  ›  专栏  ›  技术社区  ›  JP Silvashy Gautam Rege

nginx conf文件是什么语言?

  •  48
  • JP Silvashy Gautam Rege  · 技术社区  · 14 年前

    我想在我的Nginx配置文件中写一些更复杂的条件,但是我不确定语法,也找不到文档来描述除了示例中的基础知识之外你还能做什么,而且我在Nginx论坛或邮件列表中似乎也找不到。

    unless 条件?

    3 回复  |  直到 7 年前
        1
  •  31
  •   scorpiodawg    7 年前

    所以我是nginx的新手,有同样的问题。事实证明,上面提到的语言的语法是自定义的,实际上非常简单。语法是 captured in a section 在NGINX文档中,为了方便起见,这里重复:

    nginx由指令控制的模块组成 在配置文件中指定。指令分为 简单指令和块指令。简单指令包括 名称和参数以空格分隔,并以分号结尾 (;). 块指令的结构与简单指令相同, 但它不是以分号结尾,而是以一组附加的 用大括号({和})括起来的指令。如果块指令可以 事件、http、服务器和位置)。

    被认为是在主上下文中。事件和http 指令位于主上下文中,服务器位于http中,位置位于http中 服务器。

    总而言之: NGINX配置文件中的所有内容都是 它可能引用 变量 . 所有指令都是 listed alphabetically here ,所有变量 listed alphabetically here 模块 每个模块都实现了特定的功能 贡献 可在配置中使用的指令和变量。就这样。

    这就是为什么 if 指令 ngx_http_rewrite_module module

    希望这有帮助!

    PS-还可以查看 https://devdocs.io/ ,特别是 https://devdocs.io/nginx ,对于 搜索/使用NGINX文档的改进方法。

        2
  •  29
  •   Stefan Thorpe    6 年前

    Nginx conf文件是用它们自己的语言或语法编写的。我在下面介绍了一些基本知识。这些是我个人的笔记 Mastering Nginx

    基本格式

    基本文件分为几个部分

    :
    
    <section> {
    
      <directive> <parameters>; 
    
    }
    

    它没有以上述标准格式定义,没有{}环绕全局部分。它位于配置文件的顶部

    重要全局参数

    用户—工作进程运行的用户和组。如果组省略,则等于用户使用的

    错误日志-错误日志的位置。可以在指令中覆盖。第二个参数表示日志调试的级别(仅在编译时配置调试mod时可用)、info、notice、warn、error、crit、alert和emerg。

    worker\u connections-配置工作进程可以打开的最大同时连接数。在反向代理服务器上尤其重要,可能需要在操作系统级别进行一些额外的调整,以达到同时连接的数量。

    使用包含文件 可以在配置文件中的任何位置使用

    路径中可能会出现通配符以匹配多个文件:

    通过调用NGINX可以很容易地测试配置文件,如下所示:

    Http部分将是最常用的部分。

        3
  •  10
  •   Sriram    7 年前