Nginx

1.简介

nginx由俄罗斯的程序员开发BSD协议下发型,是一个轻量级的web服务器/反向代理服务器及电子邮件代理服务器

GPL开源协议,可修改必须开源

BSD开源协议,可商用

2.编译安装

安装准备:nginx依赖于prce库,要先安装

#yum install pcre pcre-devel

#cd /usr/local/src/

#wget http://nginx.org/download/nginx-1.4.2.tar.gz

#tar zxvf nginx-1.4.2.tar.gz

#cd nginx-1.4.2

#./configure --prefix=/usr/local/nginx

#make && install

删掉进程:pkill -9 nginx

查看进程:ps aux|grep nginx

启动nginx:nginx/sbin/nginx

3.控制命令

nginx -t 

-----测试配置是否正确

nginx -s reload

-----加载最新配置

nginx -s stop

-----作用立即停止

nginx -s quit

-----优雅停止

nginx -s reopen

-----重新打开日志

-----mv access.log access_bak.log

-----新建access.log 访问日志文件

-----./sbin/nginx -s reopen 才可以将日志写入新access.log

4.全局段配置

worker_processes 工作进程(设置原则:CPU数量*核数)

events 事件

http{server} (每一个server就是一个虚拟主机)

5.server段配置虚拟主机

5.1)nging.conf配置虚拟主机:

server{

  listen 80; #监听80端口

  server_name dddai.com; #监听域名,如有多个,空格隔开

  location /{

    root html/ddd; #根目录定位

    index index.php index.html; #默认索引页

  }

  location ~ \.php${

    root      html/ddd;

    fastcgi_pass  127.0.0.1:9000;

    fastcgi_index  index.php;

    fastcgi_param   SCRIPT_FILENAME  $DOCUMENT_ROOT$fastcgi_script_name;

    include       fastcgi_params;

  }

}

5.2)重启./nginx -s reload

5.3)本地访问:

添加hosts:192.168.2.251 ddd.com

浏览器访问:ddd.com

6.日志管理

6.1)自定义日志格式simple

6.1)设置

server{

  access_log  logs/dddai.log  simple;

}

7.Nginx集群与负载均衡

反向代理+负载均衡

在nginx中做集群与负载均衡,步骤都是一样的Upstream{}模块,把多台服务器加入到一个组

然后memcached_pass,fastcgi_pass,proxy_pass ==> upstream 组

具体配置步骤:

7.1)配置upstream

upstream imageserver{

  server 192.168.1.204:8080 weight=1 max_fails=2 fail_timeout=30s; #weight权重,max_fails联系30秒失败两次则不再访问

  server 192.168.1.204:8081 weight=1 max_fails=2 fail_timeout=30s;

}

7.2)下游调用

location ~ \.(jpg|jpeg|png|gif)$ {

  proxy_set_header X-Forwarded-For $remote_addr:

  proxy_pass http://imageserver;

}

默认的负载均衡的算法:

设置计数器轮流请求N台服务器

可以安装第三方模式,来利用不同参数把请求均衡到不同服务器去

如基于cookie值区别用户做负载均衡(nginx sticky 模块)

或基于URI利用一致性哈希算法均衡(NginxHttpUpstreamConsistentHash模块)

或基于IP做负载均衡等

猜你喜欢

转载自www.cnblogs.com/cevinchen/p/8904201.html