归档文章 (2011-2017)

date
2011/01/21
Nginx 是一个高性能的 HTTP 和 反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。Nginx 编译安装比较简单,难点在于配置。下面是 Nignx 0.8.54 编译安装和简单配置笔记。

一、准备工作

1.1、安装 OpenSSL

OpenSSL 版本:openssl-1.0.0c (安装方法

1.2、准备 pcre 库

pere 是为了让 nginx 支持正则表达式。只是准备,并不安装,是为了避免在64位系统中出现错误。
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.11.tar.gz tar -zxf pcre-8.11.tar.gz

1.3、准备 zlib 库

同样只是准备,并不安装,是为了避免在64位系统中出现错误。
wget http://zlib.net/zlib-1.2.5.tar.gz tar -zxf zlib-1.2.5.tar.gz

二、编译与安装 Nignx

2.1、下载、创建临时目录

wget http://nginx.org/download/nginx-0.8.54.tar.gz tar -zxf nginx-0.8.54.tar.gz cd nginx-0.8.54 mkdir -p /var/tmp/nginx

2.2、编译与安装

详细编译配置选项见《Nginx编译参数解析》
./configure --prefix=/usr/local/nginx --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --with-http_ssl_module --with-http_dav_module --with-http_flv_module --with-http_realip_module --with-http_gzip_static_module --with-http_stub_status_module --with-mail --with-mail_ssl_module --with-pcre=../pcre-8.11 --with-zlib=../zlib-1.2.5 --with-debug --http-client-body-temp-path=/var/tmp/nginx/client --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi make && make install ln -s /usr/local/nginx/sbin/nginx /usr/sbin/
–prefix #nginx安装目录,默认在/usr/local/nginx –pid-path #pid问件位置,默认在logs目录 –lock-path #lock问件位置,默认在logs目录 –with-http_ssl_module #开启HTTP SSL模块,以支持HTTPS请求。 –with-http_dav_module #开启WebDAV扩展动作模块,可为文件和目录指定权限 –with-http_flv_module #支持对FLV文件的拖动播放 –with-http_realip_module #支持显示真实来源IP地址 –with-http_gzip_static_module #预压缩文件传前检查,防止文件被重复压缩 –with-http_stub_status_module #取得一些nginx的运行状态 –with-mail #允许POP3/IMAP4/SMTP代理模块 –with-mail_ssl_module #允许POP3/IMAP/SMTP可以使用SSL/TLS –with-pcre=../pcre-8.11 #注意是未安装的pcre路径 –with-zlib=../zlib-1.2.5 #注意是未安装的zlib路径 –with-debug #允许调试日志 –http-client-body-temp-path #客户端请求临时文件路径 –http-proxy-temp-path #设置http proxy临时文件路径 –http-fastcgi-temp-path #设置http fastcgi临时文件路径 –http-uwsgi-temp-path=/var/tmp/nginx/uwsgi #设置uwsgi 临时文件路径 –http-scgi-temp-path=/var/tmp/nginx/scgi #设置scgi 临时文件路径

2.3、开机自启动 nginx 脚本

wget http://small-script.googlecode.com/files/nginx chmod 755 nginx mv nginx /etc/init.d/ update-rc.d nginx defaults

三、 Nignx 配置

1、将 “root html;” 改为你网站目录,比如 “root /home/wwwroot;” 2、支持php,将 “location ~ .php$” 字段内所有#号注释全部去掉。 3、平滑重启,“nginx -s reload”

四、nginx 配置参考资料

1、Nginx 的中文维基 英文不好没事,一切从这里开始。
2、《实战Nginx:取代Apache的高性能Web服务器》PDF 下载) 应该是国内最权威一本书了,包括 nginx方方面面,读完它能让你少走不少弯路。
3、Nginx 指令索引 不理解别人配置文件?到这里“Ctrl+F”搜搜吧,你就找到答案了。
4、关于Nginx的一些优化(突破十万并发) CPU、内存强劲的可以尝试下,同样思路,相反可以将nginx优化成低内存消耗。
5、Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器 经典文章,建议从最后看起,前面的忽略
6、nginx 多虚拟主机配置 顾名思义,添加多个虚拟主机的方法,都是添加多个 server 字段实现。
7、Nginx 打开目录浏览功能 Nginx 默认是不允许列出整个目录的,这是个很实用的小技巧。
……
If you have any questions, please contact me.