nginx模块详解
大家好,我是酷酷的韩~
一.模块分类
1.官方模块
官方提供的 例如nginx.org网站上提供的所有~
2.第三方模块
第三方提供的或自己写的称为第三方模块。
3.通过nginx -V 可进行查看
二.模块详解
1.–with-http_stub_status_module
(1)含义: nginx的客户端状态
(2)配置语法:
Synax:stub_status
Default:-
Context:server,location
(3)操作,在/etc/nginx/conf.d/default.conf中,新增
location /substatus{
stub_status;
}
(4)新增完重新加载
nginx -s reload -c /etc/nginx/nginx.conf
会有少部分人会问,为什么修改的是default.conf,重新加载的是nginx.conf呢? 因为nginx.conf加载的同时会去加载default.conf ,详情可去另外一篇博客:https://blog.csdn.net/hjq_ku/article/details/89383278
(5)浏览器访问
2.–with-http_random_index_module
(1)含义:目录选择一个随机主页
(2)配置语法:
Synax:random_index on |off
Default: random_index_off;
Context:location
3.with-http_sub_module
(1)含义:
http内容替换,替换一些html中的内容
(2)配置语法:
替换第一个字段
Synax: sub_filter string replacement
Default:-
Context: http server location
判断是否有更新,有更新返回用户最新的 如果没更新,不需要再次返回相同的html (nginx缓存)
Synax:sub_filter_last_modified on|off;
Default:sub_filter_last_modified off;
Context:http,server,location
匹配所有html代码里面的第一个还是匹配所有指定字符串(on第一个 off所有指定)
Synax:sub_filter_once on|off
Default:sub_filter_once on
Context:http,server,location
(3)运用:
在/opt/app/code 目录下有一index.html文件,内容如下:
在default.conf中修改(注意,每句之间用;)
location / {
root /opt/app/code;
index index.html index.htm;
sub_filter '<a>java' '<a>JAVA';
sub_filter_once off;
}
其中 sub_filter ‘java’ ‘JAVA’;将html中第一个’java’ 修改为 ‘JAVA’
sub_filter_once 默认为on on时 则只会修改第一个 off 会修改所有。(不是a1 是a 编辑的时候有点小bug)
(4)浏览器访问:
要成功,先发疯,头脑简单向前冲。------酷酷的韩