定制 absolute/magento2-cache-bust 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

absolute/magento2-cache-bust

最新稳定版本:3.1.2

Composer 安装命令:

composer require absolute/magento2-cache-bust

包简介

Absolute Commerce Cache Bust extension for Magento 2

README 文档

README

With Absolute Cache Bust for Magento 2 you can ensure your customers are viewing the latest version of your images, CSS and JavaScript files. This extension can be used with or without a CDN, and will also bust local versions of assets in your customers web browser cache. Find more information at https://abscom.co/cachebust.

Version Compatibility

  • For Magento 2.2.x and later please use version 3.x.x of this extension.
  • For earlier Magento versions, please use version 2.x.x of this extension.

Installation

The best way to add the extension is via composer.

composer require absolute/magento2-cache-bust

Once the extension has been added, update Magento 2 in the normal fashion.

php bin/magento setup:upgrade

Web Server Configuration

Some web server configuration is required in order for requests to yoursite.com/static/version12345/some/asset.js to resolve correctly. The intention is for the web server to ignore the segment /version12345/ and process the request as if it were not there.

Add the following to the appropriate location in your web server configuration.

Nginx

For the static cache busting, Magento already has the following in the recommended nginx configuration:

location /static/ {
    ...

    location ~ ^/static/version {
        rewrite ^/static/(version\d*/)?(.*)$ /static/$2 last;
    }
    
    ...

For the media cache busting, add the following to your nginx configuration:

location /media/ {
   ...
   
   location ~ ^/media/version {
       rewrite ^/media/(version\d*/)?(.*)$ /media/$2 last;
   }
   
   ...
}

Apache

For the static cache busting, Magento already has the following configuration in pub/static/.htaccess:

<IfModule mod_rewrite.c>
    RewriteEngine On

    # Remove signature of the static files that is used to overcome the browser cache
    RewriteRule ^version.+?/(.+)$ $1 [L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-l

    RewriteRule .* ../static.php?resource=$0 [L]
</IfModule>

For the media cache busting, update pub/media/.htaccess with the following:

<IfModule mod_rewrite.c>

############################################
## enable rewrites

    Options +FollowSymLinks
    RewriteEngine on

############################################
## Absolute Cache Bust
    RewriteRule ^version.+?/(.+)$ $1 [L]

############################################
## never rewrite for existing files
    RewriteCond %{REQUEST_FILENAME} !-f

############################################
## rewrite everything else to index.php

    RewriteRule .* ../get.php [L]
    
</IfModule>

CORS

Since Magento 2.2.x you will also need to configure your web server to allow CORS requests through, otherwise you may see errors like:

  • ... OPTIONS ... 405 ()
  • Uncaught SyntaxError: Unexpected end of JSON input
  • Response for preflight has invalid HTTP status code 405
  • Request header field x-requested-with is not allowed
  • No 'Access-Control-Allow-Origin' header is present
  • Access has been blocked by CORS policy

You can find out more about the required configuration here: https://absolutecommerce.co.uk/cors-in-magento-2

Usage

Once installed and configured, there are various ways to bust your Magento 2 websites cached assets.

Admin Panel Buttons

In the Magento Admin Panel go to System > Cache Management and you will see a new section at the bottom called Cache Busting. Clicking these buttons will update the dynamic element /version12345/ with a new value and then flush the appropriate Magento caches, so on their next visit your customers will download the assets afresh.

Command Line Interface (CLI)

In the Magento CLI tool you will see some new commands available, which can be used to automatically bust your cache during a deployment for example.

./bin/magento absolute:cache-bust:all
./bin/magento absolute:cache-bust:static
./bin/magento absolute:cache-bust:media

Help / Support

Need help or custom development? Find us at https://absolutecommerce.co.uk. For terms and conditions and license information, please visit https://abscom.co/terms.

absolute/magento2-cache-bust 适用场景与选型建议

absolute/magento2-cache-bust 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 76.78k 次下载、GitHub Stars 达 17, 最近一次更新时间为 2017 年 04 月 19 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 absolute/magento2-cache-bust 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 absolute/magento2-cache-bust 我们能提供哪些服务?
定制开发 / 二次开发

基于 absolute/magento2-cache-bust 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 76.78k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 18
  • 点击次数: 21
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 17
  • Watchers: 2
  • Forks: 3
  • 开发语言: PHP

其他信息

  • 授权协议: proprietary
  • 更新时间: 2017-04-19