やっとLiteSpeed Cache 3.5.2がリリースされたので更新してみた 【Javascript読込みの最適化設定】

ここまでのあらすじを振り返ってみると、LiteSpeed Cache 3.5.0.1がリリースされたのが、2020年9月29日でした。

その後、すぐに(2020年9月30日)JQueryの遅延読みで不具合が見つかり、LiteSpeed Cache 3.5.0.2として以前のバージョンにいったん戻されます。

当初はすぐに修正される見通しでしたが、しばらく、そのままになっていました。

最近ようやく動きがありましたので、メモしておきます。

スポンサーリンク

LiteSpeed Cacheの更新履歴を読んでみる

2020年10月20日にLiteSpeed Cache 3.5.1が、2020年10月27日にはLiteSpeed Cache 3.5.2が公開されました。

わたしは自動更新の設定にしているので、メールが届いていました。

LiteSpeed Cacheプラグインが自動更新されたメール

更新ができたことが、WordPressの上部にも通知が表示されています。

LiteSpeed Cache upgraded successfully.
NOTE: Dute to changes in this version, the settings [JS Combine] and [JS Defer] have been turned OFF.

Please turn them back on manually and verify that your site layout is correct, and you have no JS errors.

更新に伴って「JS結合」と「JS遅延読込」が自動でオフになっていて、手動で検証しないといけないことが書いてあります。

まずはLiteSpeed Cacheの更新履歴を読んでみましょう。

LiteSpeed Cache3.5.1 の更新履歴( 2020年10月20日
  • 使い捨てコード(nonce)を含むインラインJSが、JS結合できるようになった。
  • サイト破損を防ぐために、アップグレード時に「JSの結合/延期」をオフにリセットするようにした。
  • 後方互換性のために、新しいオプション「JS Combine External and Inline」を追加した。
  • 「インラインJS延期」オプションを戻した。 (@ankit)
  • 「インラインJS最小化」オプションをなくして、「JS最小化」にまとめた。
  • 新しいユーザーのレイアウトの互換性のために、デフォルトのJSの除外/延期リストにjQueryに初めから追加するようにした。
  • JS最適化からStripe / PayPal / GoogleMapを除外した。 (@FPCSJames)
  • 除外されたJSが引き続きHTTP2プッシュされることを許可した。 (@joshua)
  • クリティカルCSSは、他のサイトからのネットワーク汚染を回避できるようにした。 (@ankit)
  • 古いバージョンに簡単に戻せるように、「Beta Test」が最近の公開バージョンを表示するようにした。
  • LiteSpeed以外のサーバーのために、サーバー環境変数VaryをQUIC.cloudを使って元のサーバーに渡すことができるようにした。
  • ESI Nonceリストの下位互換性を向上した。 (@zach E)
  • プラグインニュースバナーのアップグレードボタンを修正し、外観を改善した。
  • LSCWPはClassicPressで動作するという注記を追加しました。

3.5.1 – OCT 20 2020

  • JS Inline JS containing nonces can now be combined.
  • JS Reset JS Combine/Defer to OFF when upgrading to avoid breaking sites.
  • JS Added new option JS Combine External and Inline to allow backwards compatibility.
  • JS Added Inline JS Defer option back. (@ankit)
  • Page Optimize Dropped Inline JS Minify option and merged the feature into JS Minify.
  • JS Pre-added jQuery to the default JS excludes/defer list for better layout compatibility for new users.
  • JS Excluded Stripe/PayPal/Google Map from JS optimization. (@FPCSJames)
  • JS Allowed excluded JS to still be HTTP2 pushed. (@joshua)
  • CCSS Critical CSS now can avoid network pollution from other sites. (@ankit)
  • Toolbox Beta Test now displays recent public versions so it is easier to revert to an older version
  • Vary Server environment variable Vary can now be passed to original server from QUIC.cloud for non-LiteSpeed servers.
  • ESI Improved backward compatibility for ESI nonce list. (@zach E)
  • Misc Fixed failure of upgrade button on plugin news banner and made cosmetic improvements.
  • Doc Added note that LSCWP works with ClassicPress.

ver 3.5.1はかなり大規模な更新です。実質、3.5へのメジャー・アップデートになります。

修正点の主眼は多様なサイトをサポートすることです。

Javasriptの最適化関係の設定が自動的に変わらないようになりました。

ver 3.5.0.1では、自動的に最適化設定が有効になっていましたが、それによってサイトの表示が乱れてしまうことがありました。

今回は、ユーザーが確認しながら設定することが基本になりました。

LiteSpeed Cache 3.5.2 の更新履歴(2020年10月27日)
  • CSS 結合が、インラインnoscript CSSに対応した (@galbaras)
  • v3.5.1更新時のJSオプションのリセットメッセージに閉じるボタンを追加した。 (#473917)
  • 「CSS除外」設定で、#で始まる項目もちゃんと反映されるようになった。 (@ankit)
  • 画像編集用に新しい関数 litespeed_media_resetAPI を追加した。 (@Andro)

3.5.2 – OCT 27 2020

  • CSS CSS Combine is now compatible w/ inline noscript CSS. (@galbaras)
  • GUI Added ability to manually dismiss the JS option reset message in v3.5.1 upgrade process. (#473917)
  • CSS CSS Excludes setting will no longer lose items beginning w/ #. (@ankit)
  • API New litespeed_media_reset API function for image editing purposes. (@Andro)

3.5.2の更新は、わりと細かい更新ですね。

上に表示されている更新メッセージは、ver 3.5.1では消せなかったんですね。

LiteSpeed CacheのJavascriptの最適化機能の意味

LiteSpeed CacheのJavascriptに関するページ最適化で何をしているのか、意味を調べてみましょう。

JS圧縮化(JS Minify)

JS 圧縮化」を有効にすると、余分な空白文字、改行文字、およびコメントはすべてのJSから削除されます。

JS結合(JS Combine)

JS結合」を有効にすると、個々のJSファイルをすべて1つのJSファイルに結合します。

JS HTTP/2 プッシュ(JS HTTP/2 Push)

JS HTTP/2 プッシュ」をオンにすると、Javascriptコードは、リクエストされる前にブラウザに送信されます。

JS Deferredをロード(Load JS Deferred)

JS Deferredをロード」というよりは、「JSの遅延読み込み」と訳した方がわかりやすいと思います。

これをオンにすると、HTMLの読み込みが完了した後に、すべてのスクリプトが取得され、読み込まれるようになります。

「JS Deferredをロード」というのは、和訳がちょっとおかしくて、defer(延期する)はロードにかかると思います。

実際にJS設定をいじってみた

JS設定は、「LiteSpeed Cache」→「ページの最適化」→「JS設定」で変更することができます。

いろいろ試して、このようにしました。

結局、「JSS HTTP/2 Push」と「Load JS Deferred」しか、有効にしていませんね。

「JS結合」については、外部・インラインをまとめて結合するオプション( JS Combine External and Inline)をオンにすると、アイコンフォントや画像の表示が進まなかったので、オフにしました。

「インラインJSの遅延読込み」は、JQueryのエラーがないので、いまのところ「デフォルト」のままで使っていません。

SiteSpeed Insightsのスコアは63から76に向上した

SiteSpeed Insightで測った結果が、こちらです。

前回(ver 3.5.0.2)の「63」から「76」に向上しました。

また、「JSS HTTP/2 Push」と「Load JS Deferred」を有効にする前(デフォルト)では、スコアが「58」だったので、「遅延読込み」も効いています。

よかったです。

ということで、お疲れさまでした。

最後までお読みいただいて、ありがとうございます。

タイトルとURLをコピーしました