时间: 2020-11-24|66次围观|0 条评论

nginx做反向代理proxy_pass,proxy_redirect的使用插图  大 |  中 |  小 
nginx做反向代理proxy_pass,proxy_redirect的使用插图1

    今天用nginx作为trac的反代,发现一个问题,就是登入登出跳转的时候是白页,看了下网页相应内容,发现相应的location是空的。查了一下发现是只单纯用了proxy_pass,没有使用proxy_redirect.
    假设前端url是example.com。后端server域名是in.com,那么后端server在返回refresh或location的时候,host为in.com,显然这个信息直接返回给客户端是不行的,需要nginx做转换,这时可以设置:
    proxy_redirect http://in.com  /
    nginx会将host及port部分替换成自身的server_name及listen port。不过这种配置对server_name有多个值的情况下支持不好。
我们可以用nginx内部变量来解决这一问题:
    proxy_redirect http://in.com http://$host:$server_port

    搞定

    如果不设定的话,proxy_redirect默认是default属性,官网例子是这样介绍default的:

引用 location /one/ {

  proxy_pass       http://upstream:port/two/;

  proxy_redirect   default;

}

location /one/ {

  proxy_pass       http://upstream:port/two/;

  proxy_redirect   http://upstream:port/two/   /one/;

}

转载于:https://www.cnblogs.com/xiaoleiel/p/8308458.html

原文链接:https://blog.csdn.net/weixin_30342827/article/details/98292617

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《nginx做反向代理proxy_pass,proxy_redirect的使用
   

还没有人抢沙发呢~