Zhang Jiuan’ Notes

write a lighttpd plugin

文章分类:操作系统
lighttpd mod

步骤
1. copy src:
2. modify Makefile.am
3. reconfig
4. lighttpd.conf
reference:
步骤
1. copy src:

 

Bash代码
$ cd src/  
$ cp mod_skeleton.c mod_counter.c  
$ vi mod_counter.c  
:%s/skeleton/counter/g 

$ cd src/
$ cp mod_skeleton.c mod_counter.c
$ vi mod_counter.c
:%s/skeleton/counter/g 
2. modify Makefile.am
and add some lines to the src /Makefile.am to tell the build system about your new plugin:

lib_LTLIBRARIES += mod_counter.la
mod_counter_la_SOURCES = mod_counter.c
mod_counter_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined
mod_counter_la_LIBADD = $(common_libadd)
3. reconfig
autoreconf -fi
./configure …
4. lighttpd.conf
在lighttpd.conf中加一行:
server.modules = (

                “mod_ipswitch”,
…)

 

代码:
1. 得到参数
 

uri:                 con->uri.path->ptr

query string:    con->uri.query->ptr

 

2. 判断是否需要过滤
    if (strncmp(”/xxx”, con->uri.path->ptr, 4))
        return HANDLER_GO_ON;

 

3. 返回结果
    buffer * b = chunkqueue_get_append_buffer(con->write_queue);
    buffer_copy_string_len(b, CONST_STR_LEN(”abcd - ning\n”));

    con->http_status = 200;
    con->file_finished = 1;
    return HANDLER_FINISHED;

 

 

 

reference:
http://redmine.lighttpd.net/wiki/lighttpd/HowToWriteALighttpdPlugin

If you enjoyed this post, make sure you subscribe to my RSS feed!

No Comments, Comment or Ping

Reply to “write a lighttpd plugin”

You must be logged in to post a comment.

返回顶部