每当我点击网址https://localhost:9002/trainingstorefront/?site=electronics,它总是重定向到网站的主页。这个请求映射实际上是如何发生的,它在哪里决定哪个是要加载的站点。
发布于 2020-09-07 15:26:48
站点映射是通过正则表达式(urlPatterns)完成的,您可以在CMSSite下找到它。
$siteUid=electronics
# CMS Site
INSERT_UPDATE CMSSite ; uid[unique=true] ; urlPatterns ;
; $siteUid ; (?i)^https?://[^/]+(/[^?]*)?\?(.*\&)?(site=$siteUid)(|\&.*)$,(?i)^https?://$siteUid\.[^/]+(|/.*|\?.*)$;正如您在这里看到的,(?i)^https?://[^/]+(/[^?]*)?\?(.*\&)?(site=$siteUid)(|\&.*)$正则表达式与电子CMSSite相关联。也就是说,如果你点击https://localhost:9002/trainingstorefront/?site=electronics网址,它就会登陆电子网站。
您可以根据需要更改此urlPatterns正则表达式。
例如,我希望用户在点击https://localhost:9002/trainingstorefront/ (没有?site=electronics)时登陆电子网站,为了实现这一点,我会将(?i)^https?://[^/].*$添加到urlPatterns中
$siteUid=electronics
# CMS Site
INSERT_UPDATE CMSSite ; uid[unique=true] ; urlPatterns ;
; $siteUid ; (?i)^https?://[^/]+(/[^?]*)?\?(.*\&)?(site=$siteUid)(|\&.*)$,(?i)^https?://$siteUid\.[^/]+(|/.*|\?.*)$,(?i)^https?://[^/].*$ ;https://stackoverflow.com/questions/63772287
复制相似问题