nginx-http-echo-module C语言开发的原生 Nginx 拓展

程序名称:nginx-http-echo-module

授权协议: MIT

操作系统: 跨平台

开发语言: C/C++

nginx-http-echo-module 介绍

nginx-http-echo-module 是使用C语言开发一个原生的Nginx拓展,为了学习Nginx模块和Nginx内核。

nginx_module_echo

使用echo指令输出一个字符串

Nginx 版本

Nginx1.0.10
https://github.com/nginx/nginx/releases/tag/release-1.0.10

开发环境

OS : CentOS Linux release 7.2.1511 (Core)

安装一个干净的 Nginx

  1. 下载 Nginx10.10 并且解压它

  2. 安装gcc和Nginx需要的lib

  3. ./configure –prefix=/usr/local/nginx && make && make install

    image

    image

  4. 运行Nginx

    image

定义模块配置结构

typedef struct {
    ngx_str_t ed;  //该结构体定义在这里 https://github.com/nginx/nginx/blob/master/src/core/ngx_string.h} ngx_http_echo_loc_conf_t;

定义echo模块的指令和参数转化函数

定义模块Context

  1. 定义ngx_http_module_t类型的结构体变量

  2. 初始化一个配置结构体

  3. 将其父block的配置信息合并到此结构体 实现了配置的继承

编写Handler 模块真正干活儿的部分

image

组合Nginx Module

image

整理模块代码 按照Nginx官方规范

image

编写config文件

ngx_addon_name=ngx_http_echo_moduleHTTP_MODULES="$HTTP_MODULES ngx_http_echo_module"NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/src/ngx_http_echo_module.c"

编译安装echo模块

 ./configure --prefix=/usr/local/nginx/ --add-module=/root/ngx_dev && make && make install

安装成功

image

修改Nginx配置文件测试Module

image

Nginx echo Module 运行成功

image

nginx-http-echo-module 官网

https://github.com/wujunze/nginx-http-echo-module

相关编程语言

memcached-session-manager 将session存储到memchac...
Tomcat Native 这个项目可以让 Tomcat 使用 Apache ...
EasyTomcat 是一个用来帮助简化 Tomcat 和MySQL 管理...
riak-session-manager 是使用 Riak 来存储Tomcat se...
tomcat-redis-session-manager 是一个用来将 Tomcat...
这是一款在 Oracle 的 JDeveloper 开发环境下管理To...