技术解析

只能针对目录重设 Nginx 的 Content-Type 吗?
0
2021-05-21 00:55:17
idczone

想访问 http://example.com/a.png,解析出来的是 HTML 内容并执行,而不是 png 图片。

可是分别设美国服务器置如下 location,只有 /test/ 这个 location 成功了。

location /test/ {
  default_type text/html;
  types {
    text/html  png;
  }
}
location \.png {
  default_type text/html;
  types {
    text/html  png;
  }
}

官网文档也没有讲清楚:

http://nginx.org/en/docs/http/ngx_http_core_module.html#types

请问重设 Nginx 的 Content-Type 只能针对目录吗?不能针对以特定后缀结尾的 URL 吗?


location 匹配文件后缀要用正则表达式
location 中使用正则要开头 ~* (不区分大小写) 或者 ~ (区分大小写)
我觉得改成
location ~* \.png$ 就可以了


是我大意了……

全局修改的话,按照 nginx 默认配置文件都有个 include mime.types,改那里面的。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服