nginx转发遇到的问题

今天项目上遇到一个问题
http://aa:8088去请求http://cc文件服务:9000的pdf文件,一直无响应,由于自己不懂nginx同事帮忙配的配置。然后我就对其产生了深深的怀疑。
修改之前的配置:

location /test/ {
    proxy_pass http://cc文件服务:9000/test/;
    proxy_set_header Host $http_host;
} 

查看nginx日志,发现状态码403我顿悟了,没权限说明请求头信息蹦的一下没了
在这里插入图片描述
然后我就查这个配置到底是干啥的
当Host设置为 h t t p h o s t 时 , 不 会 改 变 请 求 头 的 值 , 所 以 说 请 求 头 还 是 h t t p : / / a a 的 请 求 头 信 息 ; 而 我 转 发 给 c c 的 是 一 个 预 签 名 的 链 接 , 请 求 头 需 要 携 带 信 息 不 然 访 问 没 有 权 限 ; 所 以 真 相 就 是 我 同 事 想 搞 我 当 H o s t 设 置 为 http_host时,不会改变请求头的值,所以说请求头还是http://aa的请求头信息; 而我转发给cc的是一个预签名的链接,请求头需要携带信息不然访问没有权限; 所以真相就是我同事想搞我 当Host设置为 httphosthttp://aacc访Hostproxy_host时,则会重新设置请求头信息

location /test/ {
    proxy_pass http://cc文件服务:9000/test/;
    proxy_set_header Host $proxy_host;
} 

你可能感兴趣的:(nginx,nginx,运维,https)