Nginx 配置文件解析
nginx 整理
nginx 配置主要是分为4个部分
1、main 全局设置
2、server 主机设置 -- 指定主机与端口
3、upstream 负载均衡服务器设置 -- 反向代理设置;
4、location URL 匹配特定位置的设置 -- 匹配网页位置;
可以通过location 指令实现对nginx 对动静网页进行过滤处理;
events {
...
}
http {
....
server {
localtion {
...
}
...
}
server {
include /nginx/conf/vhosts/www1.com.conf
// 配置虚拟主机配置内容指向位置;其实也是一个 server 虚拟主机配置;
}
}
分类: Nginx
nginx 负载包括四种:
1、轮询 按照请求时间逐一分配到不同的后端服务器;
2、ip_hash 当调度为ip_hash时;后端服务器调度状态不能是 weight 和 backup
3、fair 是根据 页面大小 和加载时间进行只能的负载;也就是根据响应时间分配;nginx本身不支持fair,需要下载nginx的 upstream_fair模块;
4、url_hash 按访问URL的hash结果来分配;每一个URL定向到同一个后端服务器;
upstream 是nginx 的和http upstream模块的,通过一个简单的调度计算来实现客户端IP到后端服务器的负载均衡;
upstream www1.com {
// 定义负载均衡名称 www1.com
ip_hash;
// 每个请求按访问IP的哈希结果分配 同一个IP访问固定访问一个后端服务器,有效解决了动态网页存在的session(会话)共享问题;
server 192.168.0.11:80 ;
server 192.168.0.12:80 down;
// down 表示当前 server暂时不参与负载均衡;backup 参数表示预留备份机器;
server 192.168.0.13:80 max_fails=3 fail_timeout=20s;
// max_fails 表示请求失败次数 fails_timeout 失败孩子后暂停服务的时间;
}
配置 示例
server {
listen 808;
server_name www.1234567.com;
location / {
proxy_pass http://test;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
}
}
upstream test{
#server 172.16.2.11:808;
server 172.16.2.13:808;
server 172.16.2.14:808;
server 172.16.2.15:808;
}
分类: Nginx