apache 在代理时可以“获取并返回” 302/301 重定向吗?

apache 在代理时可以“获取并返回” 302/301 重定向吗?

因此我使用 ProxyPass 指令重定向到内部托管的 API:

ProxyPass /api/ http://internal.api.server/
ProxyPassReverse /api/ http://internal.api.server/

一切运行正常。不幸的是,客户端有一个错误,无法正确处理 301/302 重定向。API 以正确的 RESTful 风格返回某些操作的重定向,例如指示在哪里可以查看您刚刚使用 POST 创建的新内容。

无论如何,有没有办法配置 apache 从 302 目标位置获取内容并将其返回给原始请求?

即目前:

  • 浏览器请求 /api/will-redirect.json
  • apache 将其代理到内部 api
  • api 响应 302:/api/final-location.json
  • apache 反向代理到客户端
  • 客户端因无法处理 302 而死机

我想要的是:

  • 浏览器请求 /api/will-redirect.json
  • apache 将其代理到内部 api
  • api 响应 302:/api/final-location.json
  • apache 获取 /api/final-location.json
  • apache 将 /api/final-location.json 的内容返回给客户端(作为 200 )

有效地使 302 对客户端不可见。可能吗?

相关内容