Nginx 初试

1. 前言
Nginx(发音为 [engine x])是有俄罗斯人Igor Sysoev建立的项目,基于BSD许可.
它本身是一个高速的http服务器,具有很优秀的性能表现,同时也可以作为IMAP/POP3的代理服务器.俄罗斯的一些大网站已经使用它超过两年多了,一直表现不凡.

2. Nginx应用简述
Nginx被安装在服务器(192.168.8.84)上的 /usr/local/nginx 目录下. "conf/" 目录下存放配置文件, "html/" 存放默认的404,50x等错误文件, "logs/" 目录下存放着所有的日志, "sbin/" 目录下只有一个文件,即主程序文件 nginx.

Nginx 默认的配置文件放在 "conf/" 下,当然也可以自己手工指定,例如用以下方式来启动:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
或者
/usr/local/nginx/sbin/nginx
都可以,Nginx自动进入后台作为daemon程序运行.
重启Nginx可以用 "kill -HUP" 的方式,也可以先杀掉进程,然后重新启动;推荐第一种,可以避免出现短暂的无法访问情况.

Nginx还提供状态报告功能,访问地址为:
http://192.168.8.84/NginxStatus
需要先输入http auth的用户和密码 yejr/yejr,然后就可以看到类似如下的信息:
Active connections: 328
server accepts handled requests
9309 8982 28890 Reading: 1 Writing: 3 Waiting: 324
第一行表示目前活跃的连接数
第三行的第三个数字表示Nginx运行到当前时间接受到的总请求数
第四行看不懂 :(

如上所述,Nginx的日志存放在 "logs/" 下,和apache的日志类似,有两种:access log 和 error log.
access log 为 logs/imysql.cn_access.log,它的格式比较容易读懂,不再细述.
error log为 logs/error.log,主要关注错误日志,即 "[error]" 和 "[crit]" 级别的日志.

如果觉得某个主机的负载较高,可以调整 "upstream mysvr" 区间中的 "weight" 参数,该值越高权值越大,被分流的几率越大.

3. 状态监控,调整,备用方案
由于对Nginx的性能还不是很有把握,以前也没有用过,因此需要多监控系统状态.包括:
1.) 运行 top/vmstat/ps 等命令,来定期检查系统负载情况
2.) 通过上面的Nginx web接口来了解Nginx的运行状况,尤其是"Active connections"这个参数,当前Nginx设置的上限是768(配置参数: "worker_connections 768;"),如果发现这个数值快要达到上限了,就修改一下配置文件,调高该参数,然后重启.
3.) 监控Nginx的error log

附:nginx的编译参数
./configure --prefix=/usr/local/nginx --with-openssl=/usr/include --with-pcre=/usr/include/pcre/ --with-http_stub_status_module --without-http_memcached_module --without-http_fastcgi_module --without-http_rewrite_module --without-http_map_module --without-http_geo_module --without-http_autoindex_module

技术相关:

评论

跟 thttpd或lighttpd 比捏?

nginx主要是做负载均衡器,做简易web服务的也应该很不错的,但没和其他比较过,你来搞吧

MySQL方案、培训、支持
MySQL 用户组

location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/www$fastcgi_script_name;
include /usr/local/nginx/conf/fastcgi.conf;
}

访问/usr/local/www/index.php正常

访问/usr/local/www/*/index.php就出现403了。。 是哪里的设置不正确吗?

能用AWstats不?

----------------------------------
远在天边,近在眼前。幸会幸会,丫的你怎么见到我就跑?

当然,设置合适的log format让awstats能识别就行

MySQL方案、培训、支持
MySQL 用户组

欢迎使用nginx的Windows移植版ngwsx,
当前版本支持处理静态文件,反向代理,FastCGI请求。
博客:http://blog.csdn.net/ngwsx/
下载:http://download.csdn.net/source/390623