docker應用棧實踐-nginx處理靜態文件


在我的djangoweb應用在docker搭建好之后,發現一些css靜態文件返回沒有content-type屬性,導致瀏覽器log一堆警告,強迫症的我受不了這一情況

 

目前的應用棧結構圖:

一共四個容器,內部連接,其中APP1 APP2里面有兩個應用 一個uWSGI的web服務器 一個django應用程序,其他兩個容器都是內部一個應用

經過查閱很多資料,發現我使用的uwsgi貌似對mime.types支持的不太好,並沒有找到解決方法,於是我決定在nginx上做靜態文件的處理,

在nginx的配置文件

    location /static/ {
	proxy_pass http://xxxxxx;
	alias /app/dockerweb/superpigeons/static;
    }

 

因為nginx的alias都會在本機上找文件,所以需要將請求指向到其他的docker容器上,但是我發現這樣行不通,因為對應的容器上並沒有對文件系統提供服務,如果這樣 那就還需要在對應的容器里另起一個服務,實在麻煩,於是我決定在每個app的容器里再起一個nginx,專門對靜態文件做處理

 

這樣就可以解決靜態文件的問題了,因為nginx對mime.types的支持很友好,返回的content-type都是正確的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM