nginx安装与配置(一)

Nginx("engine x")是俄罗斯人编写的一款高性能的HTTP和反向代理服务器。Nginx选择高效的epoll作为网络I/O模型,在高连接并发的情况下,Nginx是Apache服务器不错的替代品。它能支持高达50000个并发连接数,而相应的内存,CPU等系统资源消耗却非常低,运行非常稳定。在国内,新浪博客,新浪播客,网易新闻等多家网站使用Nginx作为Web服务器或者反向代理服务器。
想对于Apache,Nginx的有几大优势:
1.高并发连接
2.内存消耗少
3.成本低廉
4.配置文件非常简单
5.支持Rewrite重写规则,能根据域名,URL的不同,将HTTP请求分到不同的后端服务器群组。
6.内置的健康检查功能
7.节省带宽,至此后GZIP压缩,可以添加浏览器本地缓存的Header头。
8.稳定性高
9.支持热部署
而Apache则在安全性上,技术资料上要比Nginx好一点。

nginx官方网站nginx.com上下载最新的nginx的稳定版本1.2.6。
tar -xvf nginx-1.2.6.tar.gz
cd nginx-1.2.6
./configuere --prefix=/usr/local/nginx
make
make install

我安装的时候发现缺少pcre zlib等
yum list|grep pcre
yum install pcre-devel 
zlib同理

安装好之后,启动nginx
cd /usr/local/nginx/sbin
./nginx

退出nginx
killall nginx
或者通过一种优雅的方式去停止nginx
ps -ef|grep nginx
找到master的进程
kill -quit 5652

当需要将正在进行的Nginx升级,添加/删除服务器模块时,可以再不中断服务的情况下,使用新版本、重编译的Nginx可执行程序替换旧版本的可执行程序。步骤如下:
1.使用新的可执行程序替换旧的可执行程序。对于编译安装的nginx,可以将新版本编译安装到旧版本的安装路径中。
2.kill -USER2 旧版本的Nginx主进程号 
3.旧版本Nginx的主进程将重命名它的.pid文件为.oldbin,然后执行新版本的Nginx可执行程序,依次启动新的主进程和新的工作进程。
4.此时,新、旧版本的nginx实例会同时运行,共同处理输入的请求。
kill -WINCH 旧版本的nginx主进程号 逐步停止旧版本的nginx实例。
5.一段时间后,旧的工作进程处理了所有已连接的请求后推出,仅由新的工作进程来处理输入的请求了
6.这个时候,我们可以决定是使用新版本

kill -QUIT 旧的主进程号

还是恢复到旧版本。
kill -HUP 旧的主进程号:nginx将在不重载配置文件的情况下启动它的工作进程
kill -QUIT 新的主进程号:从容关闭其工作进程
kill -TERM 新的主进程号:强制退出

nginx多个域名跳转

  1. server 
  2. listen 80; 
  3. server_name www.mgcrazy.com mgcrazy.com; 
  4. if ($host != 'www.mgcrazy.com' ) { 
  5. rewrite ^/(.*)$ http://www.mgcrazy.com/$1 permanent; 

相关推荐