Docker Desktop K8s环境下Angular+Nginx MIME类型错误修复求助
Nginx容器所有资源MIME类型错误为text/html,导致JS/CSS加载失败
环境配置
- 运行环境:Docker容器部署Nginx,用于托管Angular Web应用;Docker Desktop内置Kubernetes集群中已部署对应Deployment和LoadBalancer类型Service
- Nginx配置文件(
nginx.conf):
load_module modules/ngx_http_subs_filter_module.so; http { include /etc/nginx/mime.types; server_tokens off; server { listen 80; server_name localhost; root /usr/share/nginx/html; index index.html; location / { try_files $uri $uri/ /index.html; } } }
mime.types文件包含完整的MIME类型定义,无缺失
问题现象
通过浏览器访问服务时,所有资源(JS、CSS、静态文件等)的MIME类型均被设置为text/html,浏览器因此阻止JS和CSS文件加载,提示“wrong mime type”。
该配置在本地直接运行Nginx容器以及AKS集群中部署时均无异常,仅在Docker Desktop的Kubernetes环境中出现此问题。
调试更新
进入Nginx容器内部,使用curl访问站点资源,返回的MIME类型依然为text/html,可确定问题根源在Nginx配置或容器内部环境。
求助
如何修复此问题,让各类资源获取正确的MIME类型?
内容的提问来源于stack exchange,提问作者Datz
相关产品推荐
相关产品推荐

