timr69563937
timr69563937
21-09-2018
I am trying to use resource mapping to handle roots for multiple domains in our AEM 6.4 platform, and it's just not working. It seems like they're just ignored.
For example....
https://domain123.com/content/site123/us/en/ (works)
https://domain123.com/ (mapped to path above, throws 404)
So the domain is getting through the dispatcher to the AEM publish instances, but the mapping never kicks in. The only thing I see in the access_log is for the domain root showing a 404 response. Am I missing something? Is there some checkbox to enable something hidden in some configuration dialog somewhere?
Tim
Arun_Patidar
MVP
Arun_Patidar
MVP
23-09-2018
Hi,
Can you share mapping configuration with node structure?
For more info how to create mappings you can check Creating Mapping Definitions in AEM section in below article:
timr69563937
timr69563937
24-09-2018
Well, I have tried many different variations. Let's look at this one for now. I am trying to use the default AMS URL, because our custom dev domain is internal-only DNS.
So this is the target that should come up when you hit the root....
This is the root, which should map to the above location but gets a 404....
https://aig-dev64.adobecqms.net/
Here is the mapping in CRXDE....
smacdonald2008
smacdonald2008
24-09-2018
This node looks like it contains all information documented here:
To create the mapping that prefixes any request to http://localhost:4503/ with /content:
I see the correct node type and the correct node structure.
I have asked a few internal ppl to look here.
smacdonald2008
smacdonald2008
24-09-2018
Check request log file to see if there are more details.
timr69563937
timr69563937
24-09-2018
All I see in the request log is the 404 for the root....
10.4.0.29 - - [24/Sep/2018:07:58:22 -0700] "GET / HTTP/1.1" 404 198 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
aneeta45259594
aneeta45259594
24-09-2018
Hello timr69563937
One main observation here is that you have a http mapping and you're hitting a https URL. Clearly the HTTPS is getting terminated at the Load Balancer but AEM doesn't know about it. Therefore, AEM tries to map it exactly and as it doesn't find a https mapping for https://aig-dev64.adobecqms.net/ , it errors out with a 404.
You need to do two things
1) Create an https mapping instead. Basically, in your /etc/map, create a https folder with the same set of mappings as http
2) Go to https://host:port/system/console/configMgr/org.apache.felix.http and Enable the setting Enable Proxy/Load Balancer Connection.
See AEM redirecting user back to http if accessed through SSL terminated Load Balancer for more information.
Best Regards,
Aneet Arora
smacdonald2008
smacdonald2008
24-09-2018
Excellent response!
timr69563937
timr69563937
24-09-2018
Thanks, but this doesn't seem to make any difference. Tried with both http and https nodes and with just the https node. I see the same behavior.
Arun_Patidar
MVP
Arun_Patidar
MVP
25-09-2018
Hi,
Root Level Mappings apply to the request at large including the scheme, host, port and uri path. To accomplish this a path is constructed from the request lik this {scheme}/{host}.{port}/{uri_path}
.
Try to change sling:Match property value with host.port (aig-dev64.adobecqms.net.4503) then try.
Note : You can try with AEM Publish/Author ports.