etc.map for assets causing problems. | Community
Skip to main content
Level 6
January 7, 2021
Solved

etc.map for assets causing problems.

  • January 7, 2021
  • 2 replies
  • 1546 views

I am putting together an example with the AEM 6.5, we.retail, etc.mappings, with the configurations below. The HTML routing is working correctly and removal of .html extension also works, but or some reason all the images, /etc.clientlibs, JS & CSS, JSON files are all 404 not found after implementation. Is there something in etc.mappings where I can disable sling mappings for assets?

Configuration:

 

 

{ "jcr:primaryType": "sling:Folder", "weretail.com": { "jcr:primaryType": "sling:Mapping", "sling:internalRedirect": [ "/content/we-retail/us/en" ], "weretail_com_content": { "jcr:primaryType": "sling:Mapping", "sling:match": "(.+)$", "sling:internalRedirect": [ "/content/we-retail/us/en/$1", "/$1" ] }, "reverse_mapping_content": { "jcr:primaryType": "sling:Mapping", "sling:match": "$1", "sling:internalRedirect": [ "/content/we-retail/us/en/(.*).html" ] }, "reverse_mapping_content_nohtml": { "jcr:primaryType": "sling:Mapping", "sling:match": "$1", "sling:internalRedirect": [ "/content/we-retail/us/en/(.*)" ] }, "reverse_mapping_root": { "jcr:primaryType": "sling:Mapping", "sling:match": "$", "sling:internalRedirect": [ "/content/we-retail/us/en(.html)?" ] } }, "weretail_com_root": { "jcr:primaryType": "sling:Mapping", "sling:match": "weretail.com$", "sling:internalRedirect": [ "/content/we-retail/us/en.html" ] } }

 

 

Thanks

 

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

You may need to change the below rule

Below rule matches everything .html, js, css ... and mapping to /content/we-retailt......

"sling:match": "(.+)$",

you can restrict this only for html

 

"sling:match": "(.+).html$", "sling:internalRedirect": [ "/content/we-retail/us/en/$1.html", "/$1" ]

 

 

 

2 replies

joerghoh
Adobe Employee
Adobe Employee
January 8, 2021

You can use localhost:4502/system/console/jcrresolver to check the resolution of these URLS. Unfortunately I don't see from the screenshot what path these clientlib requests are using.

arunpatidar
Community Advisor
arunpatidarCommunity AdvisorAccepted solution
Community Advisor
January 8, 2021

You may need to change the below rule

Below rule matches everything .html, js, css ... and mapping to /content/we-retailt......

"sling:match": "(.+)$",

you can restrict this only for html

 

"sling:match": "(.+).html$", "sling:internalRedirect": [ "/content/we-retail/us/en/$1.html", "/$1" ]

 

 

 

Arun Patidar
Level 6
January 10, 2021
This works, however, the we-retail project has images stored in /content/we-retail/*... had to put in custom configuration to resolve the issue.