1、在nginx官网上的下载页面找到linux最新版本的下载链接,我们一般是使用nginx的stable版本,即稳定版本。在下载链接上点右键,选择复制链接。
2、然后在需要编译安装nginx的linux主机上通过下面图中的命令将刚才复制的文件链接里的nginx压缩包下载下来。下载完成后,使用tar命令将nginx解压出来,解压好以后,在解压的目录中我们可以看到一个auto目录。
3、在这个auto目录中有一个options文件,这个文件里面保存的就是nginx编译过程中的所有选项配置。
4、如下面第一张图中所示,通过命令:cat nginx-1.14.0/auto/options | grep YES找到所有编译状态默认是YES的模块,显示结果如图中所示。格式是:module_name=YES此外,还会显示出所有编译选项里包含YES字段的行,如下面第二张图中所示,以--with开头的那些行,这些可以先不看。
5、既然说到所有默认安装的模块状态是YES,那么我们来验证一下,看下面这张图。我们通过grep命令找到HTTP_CACHE模块,可以看到它的搜索结果只有两个,分别是:HTTP_CACHE=YES--without-http_cache第一个表示HTTP_CACHE是个默认安装的模块,第二个选项表示禁用这个模块。即默认安装的模块只有一个=YES的状态和一个--without的关闭开关。然后再用grep命令查找select这个web事件处理模块,可以看到并没有SELECT=YES这样一个选项,能看到的只有两个--with-select_module--without-select_module第一个是编译时启用这个模块,第二个用来关闭这个模块。即可选模块有两个开个,一个是--with开头的启用开关,一个是--without开头的禁用开关。这就是默认安装的模块和可选模块的区别。其他的模块也是一样,大家可以在自己的电脑上验证一下。
6、在查询这些资料时,网络上其他文档里说,可以使用nginx -V命令来查看。实际上不一定。比如我这里使用configure命令进行配置时,只带了一个参数,如下面所示,命令是:./configure --prefix=/usr/local/nginx编译完成后,使用make && make install命令安装。安装完成后,使用nginx -V命令查看时,可以看到,只有一个--prefix=/usr/local/nginx参数,根本看不到默认安装的模块。因此这种方法只适合查看自己添加的参数、编译时附带的可选模块或三方模块。