2016-04-25 4 views
6

Laravelアプリケーションにブラウザのキャッシュを追加したいと考えています。Laravel 5にブラウザキャッシュを追加するには?

私はそうのようなエリクサーのバージョン管理ツールを使用している

:しかし、GoogleのPageSpeed Insightsの評価によるによると、ファイルがまだキャッシュされていないと私は、代わりにこのメッセージまし https://laravel.com/docs/5.2/elixir#versioning-and-cache-busting

は、有効期限を設定します静的な リソースのHTTPヘッダーの最大経過時間は、ネットワーク上ではなくローカルディスクから事前にダウンロードした リソースをブラウザにロードするようブラウザに指示します。

私は手動でキャッシュヘッダーを追加する必要があると思いますか?

+2

に従うことができます。私はそれがより簡単だと思う – geckob

答えて

6

はい、このGoogle PageSpeedメッセージが表示されないように、静的リソースの場合はCache-ControlExpiresをHTTPヘッダーに設定する必要があります。

既にElixirバージョニングツールを使用しているので、JS/CSSファイルのExpiresを1週間に設定できます。

これを行う方法は、使用しているWebサーバーによって異なります。

Apacheを使用している場合は、.htaccessまたは仮想Webサイトの設定ファイルに次のコードを入力することができます。

<FilesMatch "\.(js|css)$"> 
    ExpiresActive On 
    ExpiresDefault "access plus 1 weeks" 
</FilesMatch> 

mod_expires Apacheモジュールを有効にしてください!

同じ構文を使用すると、.html、.jpg、.pngファイルなどのキャッシュルールを設定して、ページの読み込みを高速化できます。

あなたはnginxのを使用している場合は、この問題を解決するための同様の方法があり、あなたは、ヘッダーに有効期限を設定するためにウェブサーバを使用することができますthis tutorial

+0

答えが冗長であっても、Apache config tutarialへのリンクを追加したいだけです。 http://linuxpitstop.com/configure-apache-mod_expires-on-file-extensions/ –