How can we use the versioning for the images without updating its reference but still don't face browser cache issues | Community
Skip to main content
NaziyaP
Level 2
January 1, 2021
Solved

How can we use the versioning for the images without updating its reference but still don't face browser cache issues

  • January 1, 2021
  • 6 replies
  • 3734 views

Dear All,

How can we update image in DAM so that its versioned file can automatically be referenced in the html.

 

Suppose I have uploaded an Image XYZ.jpg and have given path in html as

<img alt="XYZ image" tabindex="1" class="XYZImage" src=“path_to/XYZ.jpg“/>.
 
Now I want to update this Image with another and I want that I only update the image in the DAM like XYZ.jpg-v-2 and my html automatically refers to the new version without any code change so that no browser cache issue come.


Please note, browser cache cannot be disabled at server, its necessary to keep that

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

6 replies

Level 3
January 2, 2021

I dont think this scenario is possible.

Referred Image name should match the name of Image present in DAM.

- Praveen

Kunal_Gaba_
January 4, 2021

You can set caching headers appropriately in apache to invalidate the browser cache after the time to live (max-age) value expires. However, It is not good for page performance to set low TTL values for browser cache. 

 

<LocationMatch "^\.*.(jpeg|jpg)$">
     Header set Cache-Control "max-age=222"
     Header set Age 0
 </LocationMatch>

 

Ankur_Khare
Community Advisor
Community Advisor
January 4, 2021

You need to write a custom workflow which will update the node where image is authored whenever there is update in dam.

Vaibhavi_J
Level 7
January 4, 2021

Hi @naziyap , 

In this scenario, you need to go for customised solution. 

This cannot be achieved straight forward since image name differs aem stores the copy of image and doesn't replace the same. 

<img src=" ${dynamic path}" />

So steps would be, 

  • Write a service to fetch the image under /content/dam/path to image. 
  • Get the latest image by created/lastmodified date. Or you can sort using version numbers too. 
  • Update the image src with dynamic path
NaziyaP
NaziyaPAuthor
Level 2
January 4, 2021
Thank You @vaibhavi_j for your response will try these methods
Umesh_Thakur
Community Advisor
Community Advisor
January 4, 2021

Hi @naziyap,

we have One option available OOB, "Move" you can achieve this.

With Move option you can rename the image and it will update the reference as well without any issue but it will ask you to update the location of image, that might not be the case in your scenario.

This will help you to handle the scenario without any code change.

One more ooption you have that is ACS Named Transformed Image Servlet.

 

Hope this will help.

Umesh Thakur

 

NaziyaP
NaziyaPAuthor
Level 2
January 4, 2021
Thank You @umesh_thakur Will definitely try the solution and post here if it works for me