Nginx服務器js加載不全,報206 (Partial Content)錯誤

問題場景

tornado服務器,配置SLB+Nginx通過80端口訪問tornado服務器的時候發現前端很多比較大的js加載不完,出現報206 (Partial Content)錯誤(部分內容)服務器成功處理了部分 GET 請求。直接訪問相關js也發現內容確實只加載了一部分呢,點擊瀏覽器刷新,發現js內容會增多。當刷新多次之後發現js才能全部加載出來,頁面能正常顯示出來,但是清空緩存後,還是206錯誤,又要刷新很多次資源才加載完。

在這裏插入圖片描述

問題原因
Nginx代理之後會有相應的代理緩存區,緩存區默認只有幾十K,某些版本的nginx默認設置中沒有相關處理,導致部分文件代理是會出現加載不全的現象,其實不僅僅是JS文件。只是因爲框架的JS文件略大,所以經常出現類似問題。

問題解決
在Nginx.conf中添加

proxy_buffer_size 128k;
proxy_buffers   32 128k;
proxy_busy_buffers_size 128k;

如:

在這裏插入圖片描述
禁止206的一篇文章 http://www.cocoachina.com/articles/57862

設置max_ranges 0;

location ~ \.mp4${
    max_ranges 0;
}

原文鏈接:https://blog.csdn.net/tcf_jingfeng/article/details/80325644

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章