Dispatcher Doubt Regarding Mod Rewrite | Community
Skip to main content
binoyp6992037
Level 2
Jun 21, 2021 2:27 AM UTC
Solved

Dispatcher Doubt Regarding Mod Rewrite

Hi All,

 

I am exploring dispatcher rewrite rules and i'm fairly new to this.

<IfModule mod_rewrite.c>
#Enable this to debug the redirect logs
RewriteEngine on
 
# remove any trailing slash, if it's there.
RewriteRule ^(.+)/$ $1
 
#Shorten the URL
RewriteRule ^/content/we-retail/us/(.*).html$ $1.html [R,L]
#Map the root folder to the home page
RewriteRule ^/?$ en.html [R,L]
</IfModule>
 
The root path does resolve to en.html but it gives a 404 error instead of the internal redirect happening.
Is some additional configuration required for getting this working as expected?
This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
BimmiSoAccepted solution
Employee
Jun 22, 2021 11:15 AM UTC

Here with the rewrite rule RewriteRule ^/?$ en.html  you have achieved the redirection on only dispatcher now there is one step which is left i.e. on publish environment you need to  go to /system/console/configMgr and open Apache Sling Resource Resolver Factory(org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl) and add in URL Mapping /content/we-retail/us/:/. Do not remove the already existing entry /:/ add after that. This is needed so that internally page can be  mapped to correct resource.

5 replies

BimmiSoAccepted solution
Employee
Jun 22, 2021 11:15 AM UTC

Here with the rewrite rule RewriteRule ^/?$ en.html  you have achieved the redirection on only dispatcher now there is one step which is left i.e. on publish environment you need to  go to /system/console/configMgr and open Apache Sling Resource Resolver Factory(org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl) and add in URL Mapping /content/we-retail/us/:/. Do not remove the already existing entry /:/ add after that. This is needed so that internally page can be  mapped to correct resource.

Translate
binoyp6992037
Level 2
Jun 24, 2021 10:56 AM UTC
Thanks a lot @bimmi_Sol
Translate
Level 2
Jun 22, 2021 10:04 AM UTC

-

Translate
shelly-goel
Employee
Jun 21, 2021 3:52 AM UTC

@binoyp6992037  You can either use sling mappings or configure Apache Sling Resource Resolver Factory for internal redirect to work

https://www.aemquickstart.in/2019/01/url-shortening-in-aem.html

Translate
binoyp6992037
Level 2
Jun 24, 2021 10:56 AM UTC
Thanks @shelly-goel
Translate