Nginx代理配置示例

正向代理

server {
    resolver 114.114.114.114;       #指定DNS服务器IP地址 
    listen 80;
    location / {
        proxy_pass http://$host$request_uri;     #设定代理服务器的协议和地址 
        proxy_set_header HOST $host;
        proxy_buffers 256 4k;
        proxy_max_temp_file_size 0k;
        proxy_connect_timeout 30;
        proxy_send_timeout 60;
        proxy_read_timeout 60;
        proxy_next_upstream error timeout invalid_header http_502;
    }
}

server {
    resolver 114.114.114.114;       #指定DNS服务器IP地址 
    listen 443;
    location / {
       proxy_pass https://$host$request_uri;    #设定代理服务器的协议和地址 
       proxy_buffers 256 4k;
       proxy_max_temp_file_size 0k;
       proxy_connect_timeout 30;
       proxy_send_timeout 60;
       proxy_read_timeout 60;
       proxy_next_upstream error timeout invalid_header http_502;
    }
}
server {
		listen       8001;
		server_name  9.188.96.17;
		access_log  logs/fagaiwei_access.log;
		location / {
			proxy_set_header Host $host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-ded-For $proxy_add_x_forwarded_for;
			proxy_pass http://59.206.96.194:10013;
			client_max_body_size 50m;
            proxy_connect_timeout 75s;
			proxy_read_timeout 75s;
			proxy_send_timeout 75s;
		}
    }
location /edmpw {
   alias /app/software/nginx/html/edmpw/;
   index  index.html index.htm;
   try_files $uri $uri/ /edmpw/index.html; # 解决页面刷新 404 问题
   proxy_set_header X-Forward-For $remote_addr;
}

location /edmpw-api/ {
   proxy_set_header Host $http_host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header REMOTE-HOST $remote_addr;
   proxy_set_header X-Forwarded-For $remote_addr;
   proxy_pass http://127.0.0.1:9380/;
}

反向代理

http{
  upstream test {
    server 192.168.10.20;
 }

 server {
    listen   80;
    server_name  192.168.10.20;
    index  index.html index.htm;
    location / {
        proxy_pass http://test;
        proxy_set_header Host $host;
        proxy_set_header Host $http_host;
    }
 }   
}
stream {
    log_format basic '$remote_addr [$time_local] '
                 '$protocol $status $bytes_sent $bytes_received '
                 '$session_time';
 
    access_log logs/stream-access.log basic;
    upstream gjj_jining {
        server 10.28.130.29:51003 max_fails=3 fail_timeout=60s;
    }
	server {
        listen 8003;
        proxy_pass gjj_jining;
        proxy_timeout 60s;
    }
}


#################################################
max_fails=3 fail_timeout=60s的作用:
	60秒内,若出现3次业务失败的问题,则将该负载节点置为不可用,60秒内不再向该节点负载任何请求;另外3次业务失败中,会将在该节点失败的业务转发到另外一个节点中,不会影响业务。
	Nginx只有当有访问时后,才发起对后端节点探测。如果本次请求中,节点正好出现故障,Nginx将把请求转交给接下来的节点处理。所以不会影响到这次请求的正常进行。
#################################################
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值