作者回复: nginx支持tcp协议,从这个角度上说是支持ftp协议的,因为ftp协议也是跑在tcp协议之上的。即,如果你有多台ftp服务,用nginx做反向代理是合适的。但如果你希望用nginx搭建ftp服务,目前我还没有了解到有这样的nginx模块。
作者回复: dav模块可以,webdav协议是一个文档管理协议。《web协议详解与抓包实战》第13课解说http响应码时以dav模块抓包举例演示过。
作者回复: 可以这么理解。ngx_http_module是核心模块,它定义了一类新的模块类型为NGX_HTTP_MODULE,普通http模块就是NGX_HTTP_MODULE模块
作者回复: 模块序号。所有模块都在ngx_modules数组中,都有其位置序号,该序号很重要,决定了其初始化、使用时的优先级,它在ngx_init_cycle方法中初始化。
这门课不讲源代码,你可以参考《深入理解Nginx:模块开发与架构解析》第9章源码解析部分理解。
作者回复: 不是,是指定义一类新的模块,这是Nginx可扩展性的一个体现。例如,几年前还没有stream模块,但是通过新增stream_core这个核心模块,就定义了一类stream子模块。
作者回复: 从第148课开始会介绍常用的openresty lua指令和SDK,不会介绍 lua语法。
作者回复: 不是,是说ngx_events_module模块其实是NGX_CORE_MODULE核心模块,然后这个核心模块定义了一类新模块叫NGX_EVENT_MODULE,这类模块里比如有一个ngx_epoll_module模块