htaccessに下記コード(mod_deflate部分のみ抜粋)を記載して、ルートにアップしていますが、mod_expiresは有効になるのですが、mod_deflateは有効になってくれず、gzip圧縮ができず困っています。
同じように作成した別のサイトでは有効になるんですが・・・。
何が原因なのか分かる方がいれば、回答いただけると助かります。
記載した内容---------------------------------
AddType image/x-icon .ico
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|ico)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI _\.utxt$ no-gzip
#DeflateCompressionLevel 4
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
</IfModule>
設定におかしなところはないので、
ご利用のサーバだけmod_deflate.cが無効になっているのかもしれません。
サーバ管理者に問い合わせてみて下さい。
つぎの方法でテストできるけど。
<IfModule !mod_deflate.c> mod_deflate.cが存在しないときの処理 </IfModule>
core - Apache HTTP サーバ バージョン 2.2
phpinfo関数でmod_deflatの利用可否を判断したほうがいいわね。
apache2handlerのLoadModulesにmod_deflatが存在するかを確認してみて。
<?php echo phpinfo();
ご回答ありがとうございます。
mod_deflate.cが存在しない場合、「ないよ」と表示されるように
してみたところ、「ないよ」が表示され、認識されていないことが
分かりました。
また、phpinfo関数も試したのですが、やはりmod_deflateは
存在しませんでした。
おなじhtaccessに<ifModule mod_expires.c>も記載していて、これは有効になるのに、なぜmod_deflateだけ存在なしになるのか全く不明です。
もうこれは諦めてプラグインを使うしかないんでしょうか・・・。
ようやくエックスサーバーから返事が来たのですが、
2014/07/17 17:41:18サーバーでは無効になっていないということで、
やはり私の何かしらの設定がおかしいようです。
次の方の方法をちょっと試してみたいと思います。