Kubernetes Ingress部署角度资产(图像)不显示

问题描述 投票:2回答:2

我使用Docker打包Angular项目(容器使用Nginx)。在Docker上运行时,图像显示正常,但在使用Ingress部署到Kubernetes时,assets文件夹中的所有图像都不会出现。

在Docker上运行的Content-Type。没关系:

Link Image

但是在Kubernetes上运行时。内容类型始终为text / html:

Link Image

Config Ingress Kubernetes。服务名称ssite

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: abc-ingress
  annotations:
    kubernetes.io/ingress.global-static-ip-name: "swing-static-ip"
    ingress.kubernetes.io/force-ssl-redirect: "true"
    ingress.gcp.kubernetes.io/pre-shared-cert: "abc,xyz"
spec:
  rules:
  - host: abc.com
    http:
      paths:
      - backend:
          serviceName: sservice
          servicePort: 8000
  - host: xyz.com
    http:
      paths:
      - path : /
        backend:
          serviceName: ssite
          servicePort: 80
      - path : /*
        backend:
          serviceName: ssite
          servicePort: 80
angular kubernetes
2个回答
0
投票

尝试添加注释:

你在使用nginx ingress吗?

nginx.ingress.kubernetes.io/rewrite-target: /

0
投票

在你的nginx配置集default_type指令中

定义响应的默认MIME类型。可以使用types指令设置文件扩展名到MIME类型的映射。

server {
   ...
   default_type text/html;

   location /assets/imgs {
      default_type image/png;
   }

   location /assets/imgs {
      default_type image/jpeg;
   }
}
© www.soinside.com 2019 - 2024. All rights reserved.