Expand my Community achievements bar.

SOLVED

multiple hosts- common redirect

Avatar

Level 1

I have a requirement related  to /etc/mapping .

i have around 60+ domains in following format:

/etc/map.publish/https/

                    ->domain1

                    ->domain2

                    ->domain3

                    ->domain4

                     ->domain.....

is there a way to write a common redirect rule for all domains instead of adding same redirect to all 60?

1 Accepted Solution

Avatar

Correct answer by
Level 10

use different regex for level 2 domains vs level 3 domains

refer- https://regex101.com/  or https://regexr.com/

View solution in original post

5 Replies

Avatar

Level 10

Try

/etc/map.publish/https/

                         my_domain

                                        sling.match   String    (.+).domains.com(/.*.html)$    --- best possible regex that you can come up with for all domains, this one is for subdomains...

                                       sling:redirect or sling:internalRedirect  ...........

Modify regex per your use case, you may require multiple rules for assets and/or libs as applicable

Avatar

Level 1

Hi Gaurav,

Thanks for the response. I tried

sling:match : "$1/etc[.]clientlibs/(.+)

sling:internalRedirect : /etc.clientlibs/$2

but this is not working. can you suggest any other way?

Avatar

Level 10

It won't work because $1 would always be null. Who is responsible to feed into $1 for "sling:match"?  You can't have a $1 in "sling:match" in a normal use case.

Please share a couple of sample urls for which you need the regex.

Avatar

Level 1

Oh thanks for the input.

I have something like this

    www.Domain1.com

     Abc-stage-64.net

     Www.Domain2.com

      Abc.Com

Individual redirect is working so i believe i am doing something wrong in regex.

Avatar

Correct answer by
Level 10

use different regex for level 2 domains vs level 3 domains

refer- https://regex101.com/  or https://regexr.com/