gpt4 book ai didi

nginx - 在 kubernetes 设置中为 protected 静态移动 `X-Accel-Redirect` 模式

转载 作者:行者123 更新时间:2023-12-02 12:11:31 27 4
gpt4 key购买 nike

我们正在迁移到 kubernetes,我们对它是全新的。

在我们当前的单一服务设置中,我们有:Nginx -> Web 应用程序。通过这种方式,我们可以在 Web 应用程序中通过身份验证来保护一些静态 Assets ,并在身份验证发生后使用 Nginx 的内部和 X-Accel-Redirect 来提供静态文件。

现在在 kubernetes 中我们有 Ingress 和这些服务的背后:

  • 网络应用
  • 私有(private)静态服务

有没有办法告诉 Web 应用程序的入口“重定向”请求,就像我们对 sendfile 所做的那样,以便私有(private)静态服务会回复它?或者以某种方式实现保护我们的静态,同时在 kubernetes 设置中保持静态服务分离和独立?

我们通过在 Web 应用程序前面链接私有(private)静态服务来使其工作,但感觉必须有更好的方法来做到这一点。

最佳答案

以下是我设法让它发挥作用的方法。

我创建了两个入口。第一:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/configuration-snippet: |
internal;
nginx.ingress.kubernetes.io/rewrite-target: /some/path/$1
name: static-service-internal
spec:
rules:
- http:
paths:
- backend:
serviceName: private-static-service
servicePort: 80
path: /protected/(.*)

第二个服务:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
name: web-app
spec:
rules:
- http:
paths:
- backend:
serviceName: web-app
servicePort: 80
path: /

您在上面看到的应该与 this example from nginx documentation 中的一样工作

当从 web-app 接收到 X-Accel-Redirect:/protected/iso.img 时,它将请求 /some/path/iso.img 来自 私有(private)静态服务

如果这能解决您的问题,请告诉我。

关于nginx - 在 kubernetes 设置中为 protected 静态移动 `X-Accel-Redirect` 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62533514/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com