我有一个在 zf2 中构建的应用程序,所有的 js、css、图像都在 public 目录中。所有 phtml 文件中需要的 js 和 css 文件都在 Application 模块的 layout.phtml 中声明。
echo $this->headLink ( )
->prependStylesheet ( $this->basePath () . '/css/owl.carousel.css' )
->prependStylesheet ( $this->basePath () . '/css/owl.theme.css' );
<script type="text/javascript" src="/js/layout.js"></script>
<script type="text/javascript" src="/assets/bootstrap-fileupload/bootstrap-fileupload.js"></script>
<script src="/js/custom.js"></script>
并且我将特定 phtml 文件所需的文件直接包含在该文件中。我正在使用缓存来缓存图像。但这里的问题是,每当我对我的 js 或 css 文件进行一些更改时,我都会使用 ctrl+f5 来查看更改,否则它们不会反映。以下是我的 .htaccess 文件的配置:
# Enable expirations
ExpiresActive On
# My favicon
ExpiresByType image/x-icon "access plus 1 year�
# Images
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
如您所见,我已将 htaccess 配置为仅缓存图像,但浏览器会自动缓存 js 和 css 文件。我可以做 ctrl f5 但我怎样才能告诉我的用户 ctrl f5。在一些搜索中,我遇到了资产管理。我正在考虑关注这个Assetic Module。我有一些疑问,比如如何使用它在不同的 phtml 文件中包含 js 或 css 文件?在现有的 ZF2 应用程序中使用它需要进行多少更改?还是有更好选择的人?如果有人早些时候实现了这个,请分享一些代码片段。