2017-03-17 66 views
-1

我使用nginx + puma。 我有一個特殊的文件夾,用戶可以在其中下載圖像,所以我對它們啓用gzip。但是當我瀏覽器。在響應中沒有Content-Encoding:gzip標頭。 可能會失敗在REG例如:gzip不能在圖像上工作

location ^~ /media/gallery/.*/.+\.(jpg|jpeg|gif|png|svg|mp3|ogg|gz|swf)$ { 
    gzip on; 
    gzip_comp_level 3; 
    gzip_buffers 16 8k; 
    gzip_static on; 
    expires max; 
    access_log off; 
    add_header Cache-Control public; 
    add_header Last-Modified ""; 
    add_header ETag ""; 
    break; 
} 

PS文件夾的樣子:

site.com/media/gallery/1/test_image.jpg

site.com/media/gallery/1/ other_image.png

site.com/media/gallery/4/other_folder_image.jpg

更新: image_from_dev_console

+0

的[正則表達式看起來不錯(https://regex101.com/r/Z1Jt8h/1)的損失。 –

+0

我懷疑這個過程中的某些東西知道PNG已經被壓縮了,所以gzip無論如何不會做任何有用的事情。無論如何,不​​是一個編程問題;投票結束堆棧溢出的主題。 – tripleee

+0

@tripleee我把截圖只是爲了顯示標題。沒有jpg和其他圖像的gzip編碼。 –

回答

1

有nginx指令gzip_types您可以將mimetypes傳遞給。默認爲text/html的

http://nginx.org/en/docs/http/ngx_http_gzip_module.html

!我必須告訴用gzip動態壓縮任何非文本文件會導致服務器和客戶端的高開銷(特別是CPU),從而節省帶寬,從而節省帶寬。

你所尋找的是像mozjpeg圖像的壓縮,有效地壓縮JPEG文件沒有質量

相關問題