• wupf
    2018-11-18
    Nginx是不支持ftp协议的吧?

    作者回复: nginx支持tcp协议,从这个角度上说是支持ftp协议的,因为ftp协议也是跑在tcp协议之上的。即,如果你有多台ftp服务,用nginx做反向代理是合适的。但如果你希望用nginx搭建ftp服务,目前我还没有了解到有这样的nginx模块。

    
     3
  • 不能如期而至
    2019-09-10
    如果用Nginx实现文件上传,下载等文件管理功能,nginx支持吗? 在官网好像没找到文件相关的module

    作者回复: dav模块可以,webdav协议是一个文档管理协议。《web协议详解与抓包实战》第13课解说http响应码时以dav模块抓包举例演示过。

    
     1
  • 不能如期而至
    2019-09-11
    Nginx中http的核心模块是不是Nginx自己定义的类似http总体的规范,然后其他人如果开发了符合规范的第三方http模块,到时就可以成为http模块的子模块?

    作者回复: 可以这么理解。ngx_http_module是核心模块,它定义了一类新的模块类型为NGX_HTTP_MODULE,普通http模块就是NGX_HTTP_MODULE模块

    
    
  • Alex
    2019-07-14
    老师您好,我在看源码的nginx.c文件时,ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module)这行代码中ngx_get_conf是一个宏,#define ngx_get_conf(conf_ctx, module) conf_ctx[module.index],它展开后cycle->conf_ctx[ngx_core_module.index],其中的index不太理解它是什么意思?它应该是struct ngx_module_s的第2个成员,我看官方的文档,struct ngx_module_s结构里的前7个成员属于私有的(它是这么描述的 /* private part is omitted */),而且这7个元素,都是用一个宏(NGX_MODULE_V1)来填充的
    展开

    作者回复: 模块序号。所有模块都在ngx_modules数组中,都有其位置序号,该序号很重要,决定了其初始化、使用时的优先级,它在ngx_init_cycle方法中初始化。
    这门课不讲源代码,你可以参考《深入理解Nginx:模块开发与架构解析》第9章源码解析部分理解。

    
    
  • WL
    2019-04-25
    请问一下老师:
    文章模块分类示意图中, 在NGX_CORE_MODULE中的events模块与events的箭头指向的NGX_ENENT_MOUDLE指的是不是同一个对象, "核心模块会定义新的子模块" 这句话中的"定义"具体是什么意思, 是指定义子模块需要实现的方法吗?

    作者回复: 不是,是指定义一类新的模块,这是Nginx可扩展性的一个体现。例如,几年前还没有stream模块,但是通过新增stream_core这个核心模块,就定义了一类stream子模块。

    
    
  • 毒液-致命守护者
    2019-02-11
    后续能出lua脚本的基础补充吗?老师

    作者回复: 从第148课开始会介绍常用的openresty lua指令和SDK,不会介绍 lua语法。

    
    
  • 风觉醒
    2019-01-04
    画图里NGX_CORE_MODULE的event指向NGX_EVENT_MODULE,是NGX_EVENT_MODULE继承NGX_CORE_MODULE的意思吗?

    作者回复: 不是,是说ngx_events_module模块其实是NGX_CORE_MODULE核心模块,然后这个核心模块定义了一类新模块叫NGX_EVENT_MODULE,这类模块里比如有一个ngx_epoll_module模块

    
    
我们在线,来聊聊吧