[Laravel] Bladeのhtmlをminifyする

サイトの表示速度を高速化するための手段として、リソースファイルを圧縮してページ表示時のファイルサイズを小さくする方法があります。

Googleの検索ページのソースコードを見てみてください。呪文のように圧縮されています。

JavaScriptやCssのminifyはLaravel mixで行なっていると思いますが、Blade(Html)についてもminifyしてみましょう。

Blaedのminifyを行う

以下のパッケージをcomposerでインストールします。

Laravel HTMLMin

$ composer require htmlmin/htmlmin

インストール出来たら、config/app.phpへ追加します。

// Provider
HTMLMin\HTMLMin\HTMLMinServiceProvider

// Alias
'HTMLMin' => HTMLMin\HTMLMin\Facades\HTMLMin::class,

HTMLMinに関する設定ファイルを取得します。

$php artisan vendor:publish --provider="HTMLMin\HTMLMin\HTMLMinServiceProvider"

取得したconfig/htmlmin.phpでBladeの圧縮を行うよう設定します。

'blade' => true,

それではデフォルトのwelcomeページを開いてみましょう。圧縮が行われていることが確認できます。

ドキュメントにも記載がありますが、圧縮する際はcacheを作成しますので、初回表示時以降はパフォーマンスにも影響ありません。

© Xzxzyzyz