2014-01-30 178 views
2

我已经设置了nginx来提供gzipped版本的文件(用脚本来压缩)。我不希望图像(PNG和其他)被压缩。所以我已经使用nginx避免压缩图像

gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; 

仍然nginx正在寻找ziped版本,如strace所示。

open("<path>/static/assets/<path>/up.png.gz", O_RDONLY|O_NONBLOCK) = -1 ENOENT (No such file or directory). 

我使用gzip_types的机智是错误的机智?

+0

这只是显示nginx打开.gz文件来读取和发送出去,这是你想要的,对吧?你的gzip_types看起来不错。在curl等中做请求并查看nginx为文件请求返回的标题。 (不要相信你的浏览器,还有一些防病毒产品ungzip也要检查) – troseman

+0

这条消息说“没有这样的文件或目录”,这是正确的,因为这些文件不在那里。我没有gzipped图像文件。但我不想让nginx搜索gzip版本的图像文件,然后回退到非gzip文件。这是一个小的开销,对吧?我希望nginx能够寻找特定类型(css,java script ...)的gzipped版本,并且直接使用原始文件进行图像处理。 – Jayadevan

+0

所以你要求up.png,你看到nginx打开“up.png.gz”?你有缓存在nginx中打开吗? >>检查nginx配置中的gzip_static << 是的你是对的,如果你知道这些文件不存在,没有意义的查找它们。 – troseman

回答