最近看了一些nginx运行hello,world的资料,然后自己总结了一下。
这里只介绍使用cygwin的情况。
在windows平台上装好cygwin以后,运行cygwin,如果想进windows下的C,D,E,F目录,则必须cd /cygdrive,进入以后用ls命令就可以看见C,D,E,F盘了,然后下好nginx源码。
准备工作做好以后,就可以开始自己的hello,world模块了,首先建一个目录,用来存放自己的模块,eg:/cygdrive/e/hello_world
首先创建一个config文件,这个文件被nginx,configure的时候识别,并告知把这个模块编译了。
eg:
下面就是ngx-hello_world_module.c
注意:在C文件中的最后一行必须回车
进入nginx目录
./configure --prefix=/cygdrive/d/server/nginx --with-cc-opt="-D FD_SETSIZE=2048"
--prefix指定nginx生成目录,还要log,配置文件等。
make && make install
如果不加–with-cc-opt=”-D FD_SETSIZE=2048”的话,你装好nginx后运行会出现
2496#0: the maximum number of files supported by select() is 64的错误提示,
这表示FD_SETSIZE的值比nginx配置文件中worker_connections指令所指定的值,你可以把nginx.conf里的
worker_connections选项改小一些,比如44,加了–with-cc-opt=”-DFD_SETSIZE=2048”后就不会碰到这问题
最后启动nginx以后,在浏览器里面输入http://localhost/hello,就能看见hello,world