Nginx模块讲解
Nginx模块分为:nginx官方模块、第三方模块
通过nginx -V查看编译参数,可以看到官方编译的模块
--with-compat
--with-file-aio
--with-threads
--with-http_addition_module
--with-http_auth_request_module
--with-http_dav_module
--with-http_flv_module
--with-http_gunzip_module
--with-http_gzip_static_module
--with-http_mp4_module
--with-http_random_index_module
--with-http_realip_module
--with-http_secure_link_module
--with-http_slice_module
--with-http_ssl_module
--with-http_stub_status_module
作用:nginx的客户端连接状态
Syntax:stub_status;
Default:——
Context:server,location
--with-http_sub_module
--with-http_v2_module
--with-mail
--with-mail_ssl_module
--with-stream
--with-stream_realip_module
--with-stream_ssl_module
--with-stream_ssl_preread_module
--with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC'
--with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
--with-http_stub_status_module
作用:nginx的客户端连接状态
Syntax:stub_status
Default:——
Context:server,location
演示:
vi /etc/nginx/conf.d/default.conf
配置如图下:
location /mystatus {
stub_status;
}

使用配置是否正确
nginx -tc /etc/nginx/nginx.conf
然后重载服务
nginx -s reload -c /etc/nginx/nginx.conf
在浏览器中输入ip+路径
http://192.168.96.188/mystatus

Active connections: 1 #当前活跃的连接数
server accepts handled requests
1 1 1 # 第一个值代表握手总次数;第二个值代理处理的连接数;第三个值是总的请求数;(握手次数一般都等于连接数,代表连接没有丢失)
Reading: 0 Writing: 1 Waiting: 0 #读、写、等待
--with-http_random_index_module
作用:目录中选择一个随机主页
Syntax:random_index on | off
Default:random_index off
Context:location
演示:
在/opt/app/code目录下定义3个html文件1.html、2.html、3.html
分别复制如下代码
<html>
<head>
<meta charset="utf-8">
<title>imooc1</title>
</head>
<body style=""> # 红色
</body>
</html>
<html>
<head>
<meta charset="utf-8">
<title>imooc1</title>
</head>
<body style=""> #黑色
</body>
</html>
<html>
<head>
<meta charset="utf-8">
<title>imooc1</title>
</head>
<body style=""> #蓝色
</body>
</html>
修改配置文件
vi /etc/nginx/conf.d/default.conf
location / {
root /opt/app/code;
random_index on;
#index index.html index.htm;
}

查看配置是否正确
nginx -tc /etc/nginx/nginx.conf
然后重载服务
nginx -s reload -c /etc/nginx/nginx.conf
在浏览器中访问ip,刷新页面就会变颜色了

--with-http_sub_module
作用:http内容替换
#1语法
Syntax:sub_filter string replacement
Default:——
Context:http,server,location
#2语法
Syntax:sub_filter_last_modified on|off
Default:sub_filter_last_modified off
Context:server,location
#3语法
Syntax:sub_filter_last_once on | off
Default:sub_filter_last_once on
Context:http,server,location
演示:
在/opt/app/code目录下添加html文件
复制如下代码,保存
<html>
<head>
<meta charset="utf-8">
<title>submodules</title>
</head>
<body>
<a>joy</a>
<a>at</a>
<a>imooc</a>
<a>joy</a>
<a>imooc</a>
</head>
</body>
</html>
访问 192.168.96.188/submodule.html。
通过配置语法替换“imooc“”的内容为“IMOOC_JOY”

vi /etc/nginx/conf.d/default.conf
加入下列代码
location / {
root /opt/app/code;
index index.html index.htm;
sub_filter '<a>imooc' '<a>IMOOC_JOY'; #sub_filter 后面添加需要替换内容,已经替换后的内容
}
访问 192.168.96.188/submodule.html
默认只替换一个

如果替换全部,加入新的语法
location / {
root /opt/app/code;
index index.html index.htm;
sub_filter '<a>imooc' '<a>IMOOC_JOY';
sub_filter_once off; #在原有基础加上此模块,off 关闭
}
保存访问地址,记得强刷或者清理缓存,此时内容全部替换

Nginx模块讲解的更多相关文章
- nginx 模块讲解
1. 通用配置选项: --prefix=<path> 指定Nginx的安装路径,所有其他的路径都要依赖于该选项 --sbin-path=<path> ...
- 【转】Nginx模块开发入门
转自: http://kb.cnblogs.com/page/98352/ 结论:对Nginx模块开发入门做了一个helloworld的示例,简单易懂.也有一定的深度.值得一看. Nginx模块开发入 ...
- Nginx模块开发入门
前言 Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%.与Apache相比,Nginx在高并 ...
- [转] Nginx模块开发入门
前言 Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%.与Apache相比,Nginx在高并 ...
- Nginx模块开发入门(转)
前言 Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%.与Apache相比,Nginx在高并 ...
- Nginx模块开发入门(转)
前言 Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%.与Apache相比,Nginx在高并 ...
- Nginx模块
模块概述 https://kb.cnblogs.com/page/98352/ Nginx模块工作原理概述 (Nginx本身支持多种模块,如HTTP模块.EVENT模块和MAIL模块,本文只讨论HTT ...
- FW: Nginx模块开发入门
前言 Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%.与Apache相比,Nginx在高并 ...
- Nginx 模块开发
Nginx 模块概述 Nginx 模块有三种角色: 处理请求并产生输出的 Handler 模块 : 处理由 Handler 产生的输出的 Filter (滤波器)模块: 当出现多个后台 服务器时, ...
随机推荐
- P1068 压缩技术
题目描述 设某汉字由N × N的0和1的点阵图案组成. 我们依照以下规则生成压缩码.连续一组数值:从汉字点阵图案的第一行第一个符号开始计算,按书写顺序从左到右,由上至下.第一个数表示连续有几个0,第二 ...
- Spring Security 5.x兼容多种密码加密方式
1 spring security PasswordEncoder spring security 5不需要配置密码的加密方式,而是用户密码加前缀的方式表明加密方式,如: {MD5}88e2d8cd1 ...
- dotnet 通过 WMI 获取系统安装软件
本文告诉大家如何通过 WMI 获取系统安装的软件,这个方法不能获取全部的软件 通过 Win32_Product 可以获取系统安装的软件 var mc = "Win32_Product&quo ...
- linux 自动检测 IRQ 号
驱动在初始化时最有挑战性的问题中的一个是如何决定设备要使用哪个 IRQ 线. 驱动需 要信息来正确安装处理. 尽管程序员可用请求用户在加载时指定中断号, 这是个坏做法, 因为大部分时间用户不知道这个号 ...
- 51nod 1282 时钟
1282 时钟 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 有N个时钟,每个时钟有M个指针,P个刻度.时钟是圆形的,P个刻度均分 ...
- dotnet 判断程序当前使用管理员运行降低权使用普通权限运行
有一些程序是不想通过管理员权限运行的,因为在很多文件的读写,如果用了管理员权限程序写入的程序,其他普通权限的程序是无法直接访问的.本文告诉大家如何判断当前的程序是通过管理员权限运行,然后通过资源管理器 ...
- POJ2763 Housewife Wind 树链剖分 边权
POJ2763 Housewife Wind 树链剖分 边权 传送门:http://poj.org/problem?id=2763 题意: n个点的,n-1条边,有边权 修改单边边权 询问 输出 当前 ...
- 多线程之美8一 AbstractQueuedSynchronizer源码分析<二>
目录 AQS的源码分析 该篇主要分析AQS的ConditionObject,是AQS的内部类,实现等待通知机制. 1.条件队列 条件队列与AQS中的同步队列有所不同,结构图如下: 两者区别: 1.链表 ...
- redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?
redis 和 memcached 有啥区别? redis 支持复杂的数据结构 redis 相比 memcached 来说,拥有更多的数据结构,能支持更丰富的数据操作.如果需要缓存能够支持更复杂的结构 ...
- DOCKER学习_005:Flannel网络配置
一 简介 Flannel是一种基于overlay网络的跨主机容器网络解决方案,也就是将TCP数据包封装在另一种网络包里面进行路由转发和通信, Flannel是CoreOS开发,专门用于docker多机 ...