修改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
Nginx优化服务之网页压缩的实现方法
Mar 31 Servers
本地通过nginx配置反向代理的全过程记录
Mar 31 Servers
nginx网站服务如何配置防盗链(推荐)
Mar 31 Servers
Nginx代理同域名前后端分离项目的完整步骤
Mar 31 Servers
Nginx安装完成没有生成sbin目录的解决方法
Mar 31 Servers
详解Nginx启动失败的几种错误处理
Apr 01 Servers
Vertica集成Apache Hudi重磅使用指南
Mar 31 Servers
阿里云日志过滤器配置日志服务
Apr 09 Servers
超越Nginx的Web服务器caddy优雅用法
Jun 21 Servers
Windows server 2022创建创建林、域树、子域的步骤
Jun 25 Servers
windows server2012 R2下安装PaddleOCR服务的的详细步骤
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
浅析Yii2缓存的使用
2016/05/10 PHP
PHP基于新浪IP库获取IP详细地址的方法
2017/05/04 PHP
拖动一个HTML元素
2006/12/22 Javascript
javascript实现的动态文字变换
2007/07/28 Javascript
在UpdatePanel内jquery easyui效果失效的解决方法
2010/04/11 Javascript
某页码显示的helper 少量调整,另附js版
2010/09/12 Javascript
JQuery UI DatePicker中z-index默认为1的解决办法
2010/09/28 Javascript
浅说js变量
2011/05/25 Javascript
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
Node调试工具JSHint的安装及配置教程
2014/05/27 Javascript
JS获取图片lowsrc属性的方法
2015/04/01 Javascript
JavaScript类型系统之正则表达式
2016/01/05 Javascript
基于jquery实现的银行卡号每隔4位自动插入空格的实现代码
2016/11/22 Javascript
JS操作xml对象转换为Json对象示例
2017/03/25 Javascript
JS常见创建类的方法小结【工厂方式,构造器方式,原型方式,联合方式等】
2017/04/01 Javascript
微信小程序 商城开发(ecshop )简单实例
2017/04/07 Javascript
Bootstrap输入框组件使用详解
2017/06/09 Javascript
JS基于贪心算法解决背包问题示例
2017/11/27 Javascript
angular写一个列表的选择全选交互组件的示例
2018/01/22 Javascript
微信小程序switch开关选择器使用详解
2018/01/31 Javascript
深入理解nodejs搭建静态服务器(实现命令行)
2019/02/05 NodeJs
django框架如何集成celery进行开发
2017/05/24 Python
python类的方法属性与方法属性的动态绑定代码详解
2017/12/27 Python
Python定义二叉树及4种遍历方法实例详解
2018/07/05 Python
Python求一批字符串的最长公共前缀算法示例
2019/03/02 Python
Python使用crontab模块设置和清除定时任务操作详解
2019/04/09 Python
python取余运算符知识点详解
2019/06/27 Python
python返回数组的索引实例
2019/11/28 Python
PyCharm最新激活码(2020/10/27全网最新)
2020/10/27 Python
印度尼西亚最完整和最大的在线药房网站:Farmaku.com
2019/11/23 全球购物
设备动力科岗位职责范本
2014/02/23 职场文书
品牌推广策划方案
2014/05/28 职场文书
节水标语大全
2014/06/11 职场文书
建筑工程技术专业求职信
2014/07/16 职场文书
护士心得体会范文
2016/01/25 职场文书
python实现Nao机器人的单目测距
2021/09/04 Python