# upstream指令用于设置一组可以在proxy_pass和fastcgi_pass指令中使用的代理服务器,默认的负载均衡方 式为轮询.upstream模块中的server指令用于指定后端服务器的名称和参数,服务器的名称可以是一个域名,一个 ip地址,端口号或者UNIX Socket. #而在server{..}虚拟主机内,可以通过proxy_pass和fastcgi_pass指令设置进行反向代理的upstream服务器集群 # proxy_set_header指令用于在向反向代理的后端WEB服务器发起请求时添加指定的header头信息 #当后端WEB服务器上有多个基于域名的虚拟主机时,要通过添加header头信息Host,用于指定请求的域名,这样后端服务器才能识别该反向代理访问请求是由那一个虚拟主机来处理 #使用反向代理之后,后端web服务器就不能直接$_SERVER['REMOTE_ADDR']变量来获取用户的真实ip了,通过$_SERVER['REMOTE_ADDR']获得的将是负载均衡器的ip.这时,就要通过Nginx反向代理时添加Header头信息X-Forwarded-For,让后端web服务器能够通过$_SERVER['HTTP_X_FORWARDED_FOR']获取到用户的真实ip #nginx的proxy_cache相关指令集 # 1.proxy_cache:该指令用于设置那个缓存区将被使用 # 2.proxy_cache_path:该指令用于设置缓存文件的存放路径 #示例:proxy_cache_path /web/server1 levels=1:2 keys_zone=cache_one:500m inactive=1d max_size=30g # 该指令只能在http标签内配置,levels指定该缓存空间有两层hash目录,第一层为1个字母,第二层为2个字母; # keys_zone参数用来为这个缓存区起名,500m指内存缓存空间大小为500MB;inactive的1d指如果缓存数据在1天内没有被访问,将被删除;max_size的30g是指硬盘缓存空间为30GB #3.proxy_cache_methods:该指令用于设置缓存那些http方法,默认缓存get和head,不缓存post #4.proxy_cache_min_uses:该指令用于设置缓存的最小使用次数,默认为1 #5.proxy_cache_valid:该指令用于对不同返回状态码的url设置不同的缓存时间 (责任编辑:IT) |