修改Nginx配置返回指定content-type的方法
一、我們遇到了什么問題?
今天前端的同學(xué)向我請教了一個Nginx服務(wù)配置的問題。我作為組里的底層開發(fā),當(dāng)然是對此類問題還是有信心的??。因為我私下里對Nginx也是學(xué)習(xí)了一點,再不濟(jì)通過豐富的google經(jīng)驗,解決此類配置問題也是不在話下的O(∩_∩)O。但是問題并沒有我想象的那么簡單,花費了我不少時間( ╯□╰ )。不多廢話了,直接上需求。
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),這時候應(yīng)該如何配置呢?
二、解決方法
走過的彎路(想直接看答案的同學(xué)可以跳過):
- 使用add_header指令,此時添加了2行conntent-type配置
- 搜索修改HTTP響應(yīng)頭,需要添加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;
}
簡要分析以下以上兩行指令做了什么,第一行指令設(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é)
到此這篇關(guān)于修改Nginx配置返回指定content-type的文章就介紹到這了,更多相關(guān)Nginx返回指定content-type內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nginx配置SSL證書實現(xiàn)https服務(wù)的方法
這篇文章主要介紹了nginx配置SSL證書實現(xiàn)https服務(wù)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05
Nginx if語句加正則表達(dá)式實現(xiàn)字符串截斷
這篇文章主要介紹了Nginx if語句加正則表達(dá)式實現(xiàn)字符串截斷功能,特殊場合下可能會需要這個功能,NGINX的奇淫技巧之一,需要的朋友可以參考下2015-02-02
Nginx服務(wù)器作反向代理實現(xiàn)內(nèi)部局域網(wǎng)的url轉(zhuǎn)發(fā)配置
這篇文章主要介紹了Nginx服務(wù)器作反向代理實現(xiàn)內(nèi)部局域網(wǎng)的url轉(zhuǎn)發(fā)實例,文中提到需要注意proxy_read_timeout參數(shù)的相關(guān)調(diào)整,需要的朋友可以參考下2016-01-01
nginx支持codeigniter的pathinfo模式url重寫配置寫法示例
這篇文章主要介紹了nginx支持codeigniter的pathinfo模式url重寫配置寫法示例,pathinfo模式是一種開發(fā)框架都愛用的路由模式,需要的朋友可以參考下2014-07-07
Ubuntu環(huán)境下安裝部署Nginx詳細(xì)步驟(有網(wǎng))
Nginx是一個開源的?HTTP?網(wǎng)絡(luò)服務(wù)器,下面這篇文章主要給大家介紹了關(guān)于Ubuntu環(huán)境下安裝部署Nginx(有網(wǎng))的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01

