nginx-http-echo-module
nginx-http-echo-module copied to clipboard
A simple Nginx echo module
Practical development Nginx Module
简体中文
nginx_module_echo
echo string
Nginx Version
Nginx1.0.10 https://github.com/nginx/nginx/releases/tag/release-1.0.10

The development environment configuration
OS : CentOS Linux release 7.2.1511 (Core)

Install a clean compile Nginx
-
Download a Nginx10.10 and unpack it

-
Install the GCC and the lib Nginx need

-
./configure --prefix=/usr/local/nginx && make && make install

-
Nginx run

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

Define Nginx instruction and parameter conversion function

definition module Context
- Define the type of ngx_http_module_t structure variables

- Initialize a configuration structure

- Will the father block configuration information incorporated into this structure Implement the configuration of inheritance

Write the Handler really work part of the module

Combination Nginx module

Finishing module code According to the Nginx official specification

Write the config file
ngx_addon_name=ngx_http_echo_module
HTTP_MODULES="$HTTP_MODULES ngx_http_echo_module"
NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/src/ngx_http_echo_module.c"
make && make install
./configure --prefix=/usr/local/nginx/ --add-module=/root/ngx_dev && make && make install
Successful installation

Modify the Nginx configuration file test Module

Nginx echo Module The successful running

If the repo help you welcome star fork Thanks!
reference
- http://wiki.nginx.org/Configuration
- http://tengine.taobao.org/book/
- http://blog.codinglabs.org/articles/intro-of-nginx-module-development.html
- https://www.nginx.com/resources/wiki/modules/