【问题标题】:NGINX proxy_pass to another portNGINX proxy_pass 到另一个端口
【发布时间】:2015-11-25 21:39:10
【问题描述】:

我正在尝试通过代理传递在 nginx 中执行 auth_request,但我不断收到:

1 auth request unexpected status: 301

这是我的配置:

server {
    listen      8080;
    server_name  localhost;

    location /my_location/ {
        auth_request /access/auth;
        try_files $uri =404;
    }

    location /access/auth/{
        proxy_pass   http://localhost:5029/server_alias/web_service_name;
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    }

}

请求应该被发送到正在监听端口 5029 的 apache 服务器。 我做错了什么?

【问题讨论】:

  • 我猜,你应该了解proxy_passauth_request 的工作原理。
  • 根据问题的答案,我猜你应该学习一些阅读。 @AlexeyTen

标签: apache ubuntu nginx proxy auth-request


【解决方案1】:

我为面临相同问题的任何人找到了答案 只有 auth_request 路径中缺少反斜杠。

location /my_location/ {
    auth_request /access/auth/;
    try_files $uri =404;
}

【讨论】:

  • 这也是我的问题。谢谢!
  • 如果没有反斜杠作为后缀,nginx 总是会向客户端发送状态为 301 的响应。
猜你喜欢
  • 1970-01-01
  • 2022-01-22
  • 2017-09-06
  • 1970-01-01
  • 2018-11-16
  • 2016-09-28
  • 2014-11-30
  • 2015-03-16
  • 2015-07-23
相关资源
最近更新 更多