nginx

一、nginx缓存静态资源

在nginx中使用expires指令来控制HTTP头部过期时间,这个指令可以放在http {}、server {}、location {} 等语句块或者 location {} 语句块中的条件语句中,如在 location 语句块中用 expires 指令控制静态文件:

写道
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 1d;
}

 即jpg、jpeg、png、gif、ico、css、js这些文件缓存一天。

时间单位:

  • ms:毫秒
  • s:秒
  • m:分钟
  • h:小时
  • d:天
  • w:星期
  • m:月
  • y:年

当没有到过期时间静态资源需要更新时,可以在文件后面加上版本号或修改时间,如js文件:

demo.js?v=2.0

 这样浏览器就会去服务器重新下载文件,或者会从缓存中加载。

 

 二、nginx反向代理

修改部署目录下conf子目录的nginx.conf文件(如nginx-1.5.13\conf\nginx.conf)内容,可调整相关配置。

反向代理配置示例:

location / {

#设置主机头和客户端真实地址,以便服务器获取客户端真实IP

        proxy_set_header Host $host;

               proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

 

               #禁用缓存

               proxy_buffering off;

 

               #设置反向代理的地址

               proxy_pass http://proxyServer;       

}

 

三、nginx负载均衡

ngnix实现负载均衡有以下几种方式:

1、轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

写道
upstream proxyServer {
server 192.168.22.142;
server 192.168.22.145;
}

 2、ip_hash

每个请求按访问ip的hash结果分配,所以同一个ip会固定到一台服务器上。

写道
upstream proxyServer {
ip_hash;
server 192.168.22.142;
server 192.168.22.145;
}

 3、weight

指定轮询几率,与访问比率成正比,用于后端服务器性能不均匀的情况。

写道
upstream proxyServer {
server 192.168.22.142 weight=10;
server 192.168.22.145 weight=10;
}

 4、fair

按后端服务器的响应时间来分配,响应时间短的优先分配

写道
upstream proxyServer {
server 192.168.22.142;
server 192.168.22.145;
fair;
}

 5、url_hash

按访问的url的hash来分配,每个url会定性到一台服务器

写道
upstream proxyServer {
server 192.168.22.142;
server 192.168.22.145;
hash $request_uri;
hash_method crc32;
}

 hash_method 表示hash算法,在server不能加入weight参数。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值