nginx简单代理配置
#直接代理所有请求
server {
listen 9091; #
server_name localhost;
location / {
proxy_pass http://192.168.0.1:8888$request_uri;
}
}
# 这里只是对http进行代理,如果需要代理https则需要另外的配置
server {
resolver 8.8.8.8; #dns解析地址,代理中有域名最好是配置一下
listen 8889; #代理监听端口
server_name localhost;
location /demo1-service {
proxy_pass http://123.60.75.219;
rewrite ^/demo1-service/(.*) /$1 break; # 如果真实访问路径中没有服务前缀名称demo1-service则需要将前缀给截取掉,如果有则不需要
}
location /demo2-service {
proxy_pass http://restapi.amap.com;
rewrite ^/demo2-service/(.*) /$1 break;
}
# 一下方式和rewrite一样的效果,在代理的ip+port后面加上 / 就会自动将前缀去掉
location ^~/gps-service/ {
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_set_header X-NginX-Proxy true;
proxy_pass http://123.60.75.219/;
}
location ^~/gaode-service/ {
#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_set_header X-NginX-Proxy true;
#这里不知道为什么代理域名不注释上面4行配置就不生效,如果注释了就没问题
proxy_pass http://restapi.amap.com/;
}
}