1下载nginx源码
wget http://nginx.org/download/nginx-1.2.0.tar.gz
2下载naxsi源码(http://code.google.com/p/naxsi/)
wget http://naxsi.googlecode.com/files/naxsi-0.46-1.tgz
3下载开发包
apt-get install libpcre3-dev libpcre3 gcc make zlib1g-dev
4编译
tar xzvf nginx-1.2.0.tar.gz tar xzvf naxsi-0.46-1.tgz ./configure --add-module=/root/software/naxsi-0.46-1/naxsi_src --prefix=/root/app/nginx
5运行
./nginx
6学习模式(0.46版)
启用nx_intercept.py
和nx_extract.py
两进程:
cd naxsi-0.46-1/contrib/naxsi-ui python nx_intercept.py -c naxsi-ui.conf python nx_extract.py naxsi-ui.conf
6.1各文件说明
文件名 | 说明 |
---|---|
nx_intercept.py | 监听端口8080,获取naxsi产生的异常信息,并将其保存到数据库 |
nx_extract.py | 监听端口8081,从数据库读取异常信息,以web形式显示 |
nx_parser.py | 业务处理,主要是数据分析以及读写数据库 |
MySQLConnector.py | 数据库句柄 |
naxsi-ui.conf | 配置文件 |
6.2fix bug
如果没有使用默认的配置文件naxsi-ui.conf
,将可能有这样的BUG。nx_intercept.py
第42行,没有使用指定的配置文件:
self.db = MySQLConnector.MySQLConnector().connect()
要将其改为如下:
self.db = MySQLConnector.MySQLConnector(conf_path).connect()
8FAQ
8.1页面403
自己编译的nginx可能会出现这个问题,主要原因是nginx对网站目录没有权限。解决方法:一,给文件夹加访问权限;二,修改nginx.conf。第一行改成user root root
Date: 2012-05-23 11:13:14 中国标准时间
Org version 7.7 with Emacs version 24