Tim*_*mwi 2 caching assets symfony
我正在使用一个使用大量图像,JS和CSS文件的Symfony2应用程序.
我希望浏览器积极地缓存这些,这样大多数页面加载都不会重新请求这些资产.
默认设置似乎是浏览器不断重新检查它们以及服务器使用304 Not Modified进行响应.如何更改此设置以便它甚至不运行此请求?(我不介意它是否使用ETag或Expires或任何机制,只要大多数页面请求不对所有图像运行单独的请求.)
我已经搜索过很多关于如何在控制器中有一个可以设置各种属性的对象的页面上找到有关如何执行此操作的信息$request.但是,我问如何为我的任何PHP代码都没有返回的资产(例如图像)执行此操作.
您必须在httpd.conf文件中添加它:
ExpiresActive On
ExpiresByType image/gif "access 1 month"
ExpiresByType image/jpg "access 1 month"
ExpiresByType image/jpeg "access 1 month"
ExpiresByType image/png "access 1 month"
ExpiresByType text/css "access 1 month"
ExpiresByType text/js "access 1 week"
ExpiresByType application/javascript "access 1 week"
Run Code Online (Sandbox Code Playgroud)
必须激活模块'mod_expires'
另外,不要忘记在配置文件中添加asset_version(请参阅http://symfony.com/doc/current/reference/configuration/framework.html#ref-framework-assets-version),以使缓存无效当你改变一些资产
| 归档时间: |
|
| 查看次数: |
4822 次 |
| 最近记录: |