0

我有一个网站设置,该网站由引擎盖下的 2 个 Web 应用程序提供支持。

一个应用程序 ( fast) 应该处理目录页面。
另一个应用程序 ( slow) 应该处理客户/购物车/结帐页面。

两个应用程序应该运行在同一主机上:
example.com:80 ( fast) 和 example.com:8000 ( slow)
当然,8000 端口不会暴露给访问者,并由 nginx 内部使用。

我希望 Web 请求slow仅在应用程序返回特定响应标头时才到达应用fast程序,例如 X-catalog-not-found。

预期结果如下:

  1. 所有请求都转到fast应用程序 example.com:80
  2. 如果fast应用程序通过 uri 找到产品 - 它会呈现页面
  3. 如果fast应用程序没有通过 uri 找到产品 - 它发送空正文和响应标头 X-catalog-not-found
  4. 根据上一步中收到的标头,nginx 将代理传递到slow应用程序 example.com:8000

我觉得应该使用 ngx_http_proxy_module 或/和 nginx_upstream 模块,但在阅读文档后还没有找到可行的解决方案。

4

0 回答 0