мод deflate не сжимает подкаталоги корня

Я уже около 48 часов пытаюсь решить проблему с gzip deflate и понимаю, что мне может понадобиться помощь, хе-хе-хе.

Наконец-то я включил модуль deflate на моем общем сервере Unix через .htaccess после того, как понял, что мне нужно включить сжатие в моем файле php.ini.

PageSpeed ​​сообщает мне, что мой корневой HTML-код закодирован с помощью gzip для сайта, и я получаю сжатие 77,3% для сайта Wordpress theoleandersofsanleon.com, но ни один из файлов в каких-либо подкаталогах не сжимается (в основном файлы css и js в моем wordpress каталог и его подкаталоги).

Я не думал, что это необходимо, но я пошел дальше и попытался использовать директиву Directory, а затем директиву Location, но безрезультатно.

Я помещаю файл phpinfo.php в корень, если вам нужно увидеть это для любых спецификаций сервера.

Вот что у меня есть в моем файле .htaccess как для моего каталога htdocs, так и для каталога wordpress:

<IfModule mod_deflate.c>
# Insert filters
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
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE image/svg+xml

# Drop problematic browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</IfModule>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация, и большое спасибо за любую помощь, я буду очень признателен, и я смогу начать отращивать свои волосы 8-)


person Will Richards    schedule 14.12.2012    source источник
comment
Спасибо за ответ. Я читал документацию о Gzip и deflate около 12 часов, и все, что я прочитал, соглашалось с тем, что Gzip был старой версией (для использования с Apache 1.3), а deflate был новым, поскольку Gzip устарел после Apache 2.0. Однако это не так. не означает, что все эти документы не являются неправильными. Я включил сжатие в .htaccess как минимум 5 различными способами, и пока я не включил вывод zlip, это не сработало. Я также на каждом этапе процесса удалял кеш браузера. У вас есть информация по заданному мной вопросу? Еще раз спасибо за ответ.   -  person Will Richards    schedule 18.12.2012
comment
Прости. Ты прав. mod_deflate предпочтительнее mod_gzip. Я не знаю, почему я это написал, хотя в свою защиту mod_deflate на самом деле использует gzip вопреки своему названию. Я удалю свой комментарий, чтобы никого не смущать.   -  person Gerben    schedule 19.12.2012
comment
Без проблем. Однако была странная вещь, я посмотрел в свой php.ini, и он сказал, что установлен mod_deflate, хотя, если вы заметили, на моем сервере работает Apache 1.3.42. В любом случае, я удалил директивы из своего htaccess и установил WT3C. Теперь он показывает, что он использует Gzip (что имеет смысл для 1.3) и сжимает все мои css и js, но не html моей домашней страницы, LOL! Итак, теперь у меня есть проблема, прямо противоположная той, что была у меня изначально 8-) Ну что ж, теперь сайт стал немного быстрее, посмотрим, не смогу ли я в конечном итоге заставить обе части уравнения работать...   -  person Will Richards    schedule 19.12.2012
comment
Ага. Я просто проверял веб-сайт, и css был возвращен со сжатием gzip. Но зачем до сих пор использовать apache 1.3.42? Этой версии почти 3 года.   -  person Gerben    schedule 19.12.2012


Ответы (1)


Попробуйте это в файле .htaccess верхнего уровня. Это контент, сгенерированный при использовании оптимизатора в cPanel.

<IfModule mod_deflate.c>
    SetOutputFilter DEFLATE
  <IfModule mod_setenvif.c>
    # Netscape 4.x has some problems...
    BrowserMatch ^Mozilla/4 gzip-only-text/html

    # Netscape 4.06-4.08 have some more problems
    BrowserMatch ^Mozilla/4\.0[678] no-gzip

    # MSIE masquerades as Netscape, but it is fine
    # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

    # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
    # the above regex won't work. You can use the following
    # workaround to get the desired effect:
    BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

    # Don't compress images
    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
  </IfModule>

  <IfModule mod_headers.c>
    # Make sure proxies don't deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
  </IfModule>
</IfModule>
person Mark    schedule 03.01.2013
comment
Привет Марк, Спасибо за вклад. Похоже, все это было записано в файле htaccess после установки WT3C. Вот мой htaccess в его нынешнем виде (по-прежнему сжимается только css и js, тест gzip не проходит): /stack/htaccessStack.txt Еще раз спасибо. - person Will Richards; 08.01.2013
comment
Насколько я вижу, в вашем файле htaccess нет ничего плохого. Лучшее, что я могу предложить, это обновить Apache, но, честно говоря, я бы попробовал это, но не совсем уверен, что это будет иметь какое-то значение :) - person Mark; 09.01.2013
comment
Потрясающий. Спасибо, что проверили Марка. Очень ценю вас. Я посоветуюсь со своим хостом, чтобы понять, почему они используют старый Apace, и пойду оттуда. - person Will Richards; 14.01.2013
comment
@WillRichards Вам удалось решить эту проблему? У меня такая же проблема, и я не мог решить это. - person user1448031; 08.11.2017