Skip to main content

AEM Clientlib Versioning

AEM Clientlib Versioning


Clientlib versioning allows CSS and javascript which is served by aem clientlibs to be cached for a very long time which in turn reduces the page load time of the website and improves performance. It has various benefits like -

  • Longer TTL for cached client libraries.
  • Improved web and site performance by reducing page load time.
  • No more inconsistent data from the normal client library.

How it works -

  • It uses Sling Rewriter to rewrite the client libraries and append a unique MD5 value at the end of the client library URL.
  • This url get cache later.
  • This MD5 value is unique for the code of ClientLibs. 
  • If there is a modification in code or ClientLibs, a new MD5 value will be generated and appended to the client library URL this allows it to recache.

Steps to create Clientlib version:

  1. Login to http://localhost:4502/crx/de/index.jsp
  2. Go to /apps/<your-project>/config 
  3. Create a nt:unstructured folder by name it as a rewriter
  4. Go to /libs/cq/config/rewriter/default
  5. Copy the default node and paste it under your project config folder
It will look like this -

versioned-clientlibs

Configure Apache to send the right headers so that it can be cached. Example

Apache server configuration

Versioned ClientLibs URL will look like this:

https://localhost:4502/etc.clientlibs/we-practice/clientlibs/sales.min. 8d1738c51ad22dacbbbec37f85734bac.js

Note -

For loading versioned ClientLibs for the first time you need to restart AEM instance.

Validation -

· Navigate to http://localhost:4502/system/console/status-slingrewriter

· Search for resource path where versioned clientlibs is created /apps/<project-name>/config/rewriter/versioned-clientlib. If a resource path is found under the sling rewriter. That means the configuration is working fine.

Comments

Popular posts from this blog

AEM 6.3 - How to extend Granite UI

Here in this article, I am going to explain how to extent Granite UI that is basically used to create AEM 6.x consoles. There can be various use cases where in you may need that. In our case, author wants to take all the page creation requests through AEM instead of email communication. Authors are basically looking for a form in AEM authoring console so that requestor can login and submit page creation/Asset upload request. Overall requirement is - Need a link in Navigation so that author can click on it and go to a Intake form. Author must be able to fill and save the intake requests. Author must be able to see the history of submitted intake requests Able to see the details of submitted intake requests. Solution - 1. Create a following structure - /apps/cq/core/content/nav/form and add the details given in below screenshot - You basically need to add - href, title and icon. Href is the path of page where user will land on clicking it.  Af...

How Catalan Numbers Help in Solving DSA Problems?

Catalan numbers are a sequence of natural numbers that appear in various combinatorial problems, often related to recursively defined structures. These numbers are widely used in counting problems, particularly in dynamic programming and combinatorics. The sequence of Catalan numbers starts as follows: C 0 = 1 , C 1 = 1 , C 2 = 2 , C 3 = 5 , C 4 = 14 , C 5 = 42 , … C_0 = 1, C_1 = 1, C_2 = 2, C_3 = 5, C_4 = 14, C_5 = 42, \dots Formula for Catalan Numbers The n-th Catalan number can be computed using the following formula: C n = ∑ i = 0 n − 1 C i ⋅ C n − i − 1 C_n = \sum_{i=0}^{n-1} C_i \cdot C_{n-i-1} Alternatively, it can be expressed using the binomial coefficient: Catalan numbers are a sequence of natural numbers that appear in various combinatorial problems, often related to recursively defined structures. These numbers are widely used in counting problems, particularly in dynamic programming and combinatorics. The sequence of Catalan numbers starts as follows: Formula for Catalan ...

Search engine optimization in CQ

SEO Optimization Search engine optimization ( SEO ) is the process of affecting the visibility of a website or a web page in a search engine 's "natural" or un-paid (" organic ") search results . Source : Wiki Whenever you enter a query in a search engine and hit 'enter' you get a list of web results that contain that query term. Users normally tend to visit websites that are at the top of this list as they perceive those to be more relevant to the query. If you have ever wondered why some of these websites rank better than the others then you must know that it is because of a powerful web marketing technique called Search Engine Optimization (SEO) . SEO is a technique which helps search engines find and rank your site higher than the millions of other sites in response to a search query. SEO thus helps you get traffic from search engines.  HTML Tags and SEO Here is the list of important html tags which help search engine t...