日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

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

作者:老實(shí)憨厚的文文 ? 更新時(shí)間: 2022-11-06 編程語言

一、我們遇到了什么問題?

今天前端的同學(xué)向我請教了一個(gè)Nginx服務(wù)配置的問題。我作為組里的底層開發(fā),當(dāng)然是對此類問題還是有信心的?。因?yàn)槲宜较吕飳ginx也是學(xué)習(xí)了一點(diǎn),再不濟(jì)通過豐富的google經(jīng)驗(yàn),解決此類配置問題也是不在話下的O(∩_∩)O。但是問題并沒有我想象的那么簡單,花費(fèi)了我不少時(shí)間( ╯□╰ )。不多廢話了,直接上需求。

Nginx配置中一般根據(jù)conf/mime.types文件中配置來根據(jù)文件擴(kuò)展名(文件擴(kuò)展名對大小寫不敏感)指定響應(yīng)頭中的content-type字段。mime.types文件中主要使用了types配置,如下面配置就表明*.css文件的響應(yīng)頭中conntent-type: text/css

types {
    text/css                                         css;
}

但是現(xiàn)在我們不想使用默認(rèn)配置中的types規(guī)則,需要指定css文件返回特定的conntent-type字段(比如加入指定編碼參數(shù)conntent-type: text/css; charset:utf-8),這時(shí)候應(yīng)該如何配置呢?

二、解決方法

走過的彎路(想直接看答案的同學(xué)可以跳過):

  • 使用add_header指令,此時(shí)添加了2行conntent-type配置
  • 搜索修改HTTP響應(yīng)頭,需要添加headers-more-nginx-module

最后還是通過Nginx官方文檔找到了好的解決方案(http://nginx.org/en/docs/http/ngx_http_core_module.html#types)

要指定某個(gè)location塊對所有的請求返回相同的MIME類型"application/octet-stream",以下配置可以被使用:

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

簡要分析以下以上兩行指令做了什么,第一行指令設(shè)置types配置為空(相當(dāng)于取消了默認(rèn)的types配置),第二行指令就簡單了指定了default_type。有了以上2行配置,那么我們就可以使用location塊的正則匹配功能指定css文件返回指定content-type了。

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

怎么樣,是不是看起來很簡單?但是我就是沒有在中文互聯(lián)網(wǎng)上搜索到有用的答案(也有可能是我搜索的關(guān)鍵字不對),所以在此記錄一下,希望對大家有幫助。

總結(jié)

原文鏈接:https://blog.csdn.net/u010656463/article/details/124285324

欄目分類
最近更新