laravel 5 - 启用本地资产文件的缓存

时间:2015-05-12 20:25:33

标签: php google-chrome laravel caching artisan

我目前正在使用Laravel 5开发应用程序,我遇到了以下问题:

当我从外部服务器包含一个例如.js文件时,脚本加载的是304未修改的文件 - 这很好。它根据chrome的网络选项卡加载146ms。 当我包含本地资产时,{{asset('path to asset')}}我总是得到200,加载文件需要更长的时间(约800毫秒)。

如何设法缓存资产文件?我想这是浏览器或网络服务器问题。

  • Brower:Chrome 43.0.2357.52
  • 网络服务器:我正在使用工匠内置的网络服务器

1 个答案:

答案 0 :(得分:3)

Artisan服务器不适合生产使用 - 它只是一个开发服务器。它没有缓存,并不意味着。在开发过程中,您不希望缓存内容,因为这会阻止您的更改进入浏览器。

当您使用实际服务器(如Apache或Nginx)进行生产时,它应该为您处理缓存。它们都非常灵活,并且有一堆配置选项可用于缓存静态资产。值得查看HTML 5 Boilerplate repo上这些Web服务器的样板配置,因为它们可以为您提供大量明智的设置。

最好让您的Web服务器处理资产缓存,而不是将该工作放到Laravel上。对于Web服务器来说,回送静态资产(或304响应)比加载PHP,引导框架然后确定适当的响应要快得多。