当我们在使用负载均衡和反向代理的时候
我们会考到虚拟主机下面有着个配置
现在我们看一下反向代理的location 下面的配置实例:
server {
listen 80 ; 监听的端口号
server_name report.yizhenmoney.com; 代理的服务器域名
server_tokens off ; 这条指令的意思是在访问的时候影藏nginx 的版本号
location / {
proxy_next_upstream http_502 http_504 error timeout invalid_header; 这个意思就是说当后端的服务器返回502或者504(执行超时错误)的时候,自动将请求转发到upstream负载的负载均衡池中的另一台服务器,实现故障转移
proxy_set_header Host $host; 这个意思就是当后台web服务器代理多个基于域名的虚拟主机时,要添加Header头信息Host,用于指定请求的域名,这样web服务器才能识别该反向代理访问请求应该由拿一个虚拟主机来处理
proxy_set_header X-Forwarded-For $remote_addr; 这个意思就是 让后端web服务器能够获取到用户的真实IP
proxy_pass http://damocles-report; 反向代理的主机组(这个在另一个配置文件了的nginx.conf里定义负载均衡,负载均衡池的名字叫upstream damocles-report)
access_log logs/report.access.log main; 访问日志
error_log logs/report.error.log; 错误日志
}
expires 1d; 控制页面的缓存时间为一天
}