修改Nginx配置返回指定content-type的方法


Posted in Servers onSeptember 23, 2022

一、我们遇到了什么问题?

今天前端的同学向我请教了一个Nginx服务配置的问题。我作为组里的底层开发,当然是对此类问题还是有信心的?。因为我私下里对Nginx也是学习了一点,再不济通过丰富的google经验,解决此类配置问题也是不在话下的O(∩_∩)O。但是问题并没有我想象的那么简单,花费了我不少时间( ╯□╰ )。不多废话了,直接上需求。

Nginx配置中一般根据conf/mime.types文件中配置来根据文件扩展名(文件扩展名对大小写不敏感)指定响应头中的content-type字段。mime.types文件中主要使用了types配置,如下面配置就表明*.css文件的响应头中conntent-type: text/css

types {
    text/css                                         css;
}

但是现在我们不想使用默认配置中的types规则,需要指定css文件返回特定的conntent-type字段(比如加入指定编码参数conntent-type: text/css; charset:utf-8),这时候应该如何配置呢?

二、解决方法

走过的弯路(想直接看答案的同学可以跳过):

  • 使用add_header指令,此时添加了2行conntent-type配置
  • 搜索修改HTTP响应头,需要添加headers-more-nginx-module

最后还是通过Nginx官方文档找到了好的解决方案(http://nginx.org/en/docs/http/ngx_http_core_module.html#types)

要指定某个location块对所有的请求返回相同的MIME类型"application/octet-stream",以下配置可以被使用:

location /download/ {
    types        { }
    default_type application/octet-stream;
}

简要分析以下以上两行指令做了什么,第一行指令设置types配置为空(相当于取消了默认的types配置),第二行指令就简单了指定了default_type。有了以上2行配置,那么我们就可以使用location块的正则匹配功能指定css文件返回指定content-type了。

location ~ .*\.css$ {
     types { } default_type 'text/css; charset:utf-8';
}

怎么样,是不是看起来很简单?但是我就是没有在中文互联网上搜索到有用的答案(也有可能是我搜索的关键字不对),所以在此记录一下,希望对大家有帮助。

总结

到此这篇关于修改Nginx配置返回指定content-type的文章就介绍到这了,更多相关Nginx返回指定content-type内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
nginx 设置多个站跨域
Mar 09 Servers
如何在centos上使用yum安装rabbitmq-server
Mar 31 Servers
nginx内存池源码解析
Nov 20 Servers
Nginx虚拟主机的搭建的实现步骤
Jan 18 Servers
Apache Linkis 中间件架构及快速安装步骤
Mar 16 Servers
nginx搭建NFS网络文件系统
Apr 14 Servers
利用nginx搭建RTMP视频点播、直播、HLS服务器
May 25 Servers
vscode远程免密登入Linux服务器的配置方法
Jun 28 Servers
nginx七层负载均衡配置详解
Jul 15 Servers
Nginx如何配置多个服务域名解析共用80端口详解
Sep 23 Servers
Nginx如何配置多个服务域名解析共用80端口详解
Sep 23 #Servers
VMware虚拟机安装 Windows Server 2022的详细图文教程
zabbix如何添加监控主机和自定义监控项
Aug 14 #Servers
教你使用RustDesk 搭建一个自己的远程桌面中继服务器
Aug 14 #Servers
nginx配置指令之server_name的具体使用
Aug 14 #Servers
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
Windows server 2016服务器基本设置
You might like
php定时计划任务与fsockopen持续进程实例
2014/05/23 PHP
jquery tablesorter.js 支持中文表格排序改进
2009/12/09 Javascript
jQuery的控件及事件(输入控件及回车事件)使用示例
2013/07/25 Javascript
IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题
2015/08/21 Javascript
JavaScript实现99乘法表及隔行变色实例代码
2016/02/24 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
javascript 动态样式添加的简单实现
2016/10/11 Javascript
基于jPlayer三分屏的制作方法
2016/12/21 Javascript
jquery插件treegrid树状表格的使用方法详解(.Net平台)
2017/01/03 Javascript
ES6新增数据结构WeakSet的用法详解
2017/08/07 Javascript
Vue cli+mui 区域滚动的实例代码
2018/01/25 Javascript
Vue数据监听方法watch的使用
2018/03/28 Javascript
JS实现的JSON序列化操作简单示例
2018/07/02 Javascript
微信小程序之批量上传并压缩图片的实例代码
2018/07/05 Javascript
vue多级复杂列表展开/折叠及全选/分组全选实现
2018/11/05 Javascript
JS集合set类的实现与使用方法示例
2019/02/01 Javascript
如何获取vue单文件自身源码路径
2019/05/06 Javascript
Typescript的三种运行方式(小结)
2019/09/18 Javascript
VUE项目axios请求头更改Content-Type操作
2020/07/24 Javascript
Python读写ini文件的方法
2015/05/28 Python
使用python实现省市三级菜单效果
2016/01/20 Python
Python键盘输入转换为列表的实例
2018/06/23 Python
python3.6.3安装图文教程 TensorFlow安装配置方法
2020/06/24 Python
Django文件上传与下载(FileFlid)
2019/10/06 Python
Python定义函数实现累计求和操作
2020/05/03 Python
Django实现内容缓存实例方法
2020/06/30 Python
Python提取视频中图片的示例(按帧、按秒)
2020/10/22 Python
斯凯奇美国官网:SKECHERS美国
2016/08/20 全球购物
size?德国官方网站:英国伦敦的球鞋精品店
2018/03/17 全球购物
大学生毕业自我评价范文分享
2013/11/11 职场文书
完美的中文自荐信
2014/05/24 职场文书
学习焦裕禄同志为人民服务思想汇报
2014/09/10 职场文书
研究生简历自我评价范文
2014/09/13 职场文书
运动会广播稿50字
2015/08/19 职场文书
PHP 对接美团大众点评团购券(门票)的开发步骤
2021/04/03 PHP
Vue+Flask实现图片传输功能
2022/04/01 Vue.js