10

サーバーに mod_pagespeed をインストールしましたが、ウェブサイト oktoberfest.it で CSS と JS を組み合わせることはできません。明らかに、pagespeed.conf ファイルのフィルターで、combine_css、combine_javascript、および PassThrough を有効にしました。

また、mod_pagespeed は CSS3 ディレクティブを含む CSS ファイルを結合できないことも読みましたが、Apache のログ ファイルには、もちろん LevelLog デバッグを有効にした後、結合の失敗に関するエラーや情報はありません。CSSでもJSでもない。

私はしようとしました:

  1. CoreFilters の読み取り
  2. アパッチを再起動する
  3. touch /var/mod_pagespeed/cache/cache.flush で mod_pagespeed キャッシュを削除します
  4. Combine_css と Combine_javascript を除くすべてのフィルタを無効にします
  5. .config ファイルに示されているフォルダーが CHMOD 777 であることを確認しました

私は今何をすべきかわかりません。私はアイデアを使い果たしました。この mod_pagespeed 機能が私たちの Web サイトで機能することを本当に望んでいます。管理できないプラグインからの CSS と JS の 40 の要求があります。

あなたは私に何をするように提案しますか?

4

3 に答える 3

20

CSS結合用

WordPress を使用しているため、Wordpress の関数を追加する必要があります function.php

function remove_style_id($link) {
        return preg_replace("/id='.*-css'/", "", $link);
}
add_filter('style_loader_tag', 'remove_style_id');

ID=""WordPress は、ページ速度が気に入らない CSS リンクにタグを書き込みます。したがって、無視されます。

しかし、 JavascriptがIDを呼び出すと、プラグインで問題が発生する可能性がありますが、通常は誰もそのようにはしません。だからあなたは安全です。

于 2015-02-10T02:42:52.533 に答える
5

mod_pagespeed がサイトのリソースを結合できない問題がいくつかあるようです。まず第一に、CSS ファイルの多くにはid属性があり、combine_cssフィルターが機能しなくなります。HTML は通常、要素が 1 つのid属性を持つことを想定しており、これらの CSS ファイルが組み合わされた場合にどうあるべきかは明確ではありません。

ただし、 mod_pagespeed がページ上の CSS または JS リソースを書き換えていないように見える理由は説明できません。mod_pagespeed は HTML を書き換えることができます。たとえば、www.oktoberfest.it/?ModPagespeedFilters=collapse_whitespace はページから空白を削除できます。この問題は、mod_pagespeed がこれらのリソースを内部的にフェッチできない可能性があります。これはさまざまな理由で発生する可能性がありますが、Apacheerror_logで SERF に関連するメッセージを探してください。

フェッチ関連の失敗に対する最善の修正はModPagespeedLoadFromFile、環境で許可されている場合はディレクティブを使用することです。問題を説明しているこの FAQ エントリも参照してください。また、ベータ リリース 1.4.26.1以降への更新を試すこともできます。これには、一般的なループバック フェッチ エラーの回避策が含まれています。

于 2013-04-30T21:25:34.370 に答える