сжатие apache Сжатие файлов .js и .css не сжато? - PullRequest
22 голосов
/ 20 июня 2011

В Apache Im включаю сжатие вывода, добавив в мой файл .htaccess следующее:

# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

# Or, compress certain file types by extension:
<Files *.html>
SetOutputFilter DEFLATE
</Files>

Поэтому я передаю весь контент с помощью Content-Encoding: gzip, но когда я тестирую свою веб-страницу с помощью Yslow, яполучить:

Grade D on Compress components with gzip

There are 3 plain text components that should be sent compressed

* http://mysite.com/javascript/youTubeEmbed/youTubeEmbed-jquery-1.0.css
* http://mysite.com/javascript/jquery.swfobject.1-1-1.min.js
* http://mysite.com/javascript/youTubeEmbed/youTubeEmbed-jquery-1.0.js

В чем проблема? Разве они не сжимаются автоматически ??

спасибо

Лука

Ответы [ 3 ]

23 голосов
/ 28 июня 2011

Помните ли вы, чтобы очистить кэш перед перезагрузкой страницы и запуском Yslow?

У меня была точно такая же проблема, и я ее так и исправил.Это мой код:

AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
4 голосов
/ 04 июля 2015

В моем случае я решил точно такую ​​же проблему, просто добавив эту строку в файл .htaccess: AddOutputFilterByType DEFLATE text / javascript

Возможно, сервер не получает JavaScript как application / javascript , но text / javascript .Надеюсь, это поможет.

2 голосов
/ 15 сентября 2012

В моем случае мне пришлось удалить Reverse-Proxy-Server (nginx) - конечно, вы также можете настроить сжатие, используя файл nginx.conf (может быть расположен в / etc / nginx или использовать собственный .conf).файл находится в каталоге /etc/nginx/conf.d), но nginx вызвал некоторые другие проблемы.Удалив nginx с Сервера с помощью Plesk, взгляните на эти подсказки: http://forum.parallels.com/showthread.php?t=260563 Короче говоря: позаботьтесь о том, действительно ли файлы обслуживаются вашим Apache или они обрабатываются чем-то вроде nginx.Кстати, инструмент для быстрого тестирования: http://www.gidnetwork.com/tools/gzip-test.php

...