资源映射用于为AEM定义重定向、虚URL和虚拟主机。
例如,您可以使用这些映射:
/content
前缀,使内部结构在访客到您网站时隐藏。/content/en/gateway
页面的所有请求重定向到https://gbiv.com/
。一个可能的HTTP映射将所有请求作为localhost:4503
的前缀,其中/content
。 这样的映射可用于在允许的情况下将内部结构从访客隐藏到网站:
localhost:4503/content/we-retail/en/products.html
要通过以下方式访问:
localhost:4503/we-retail/en/products.html
因为映射将自动将前缀/content
添加到/we-retail/en/products.html
。
虚URL不支持正则表达式模式。
这些映射构成两个列表,JCR资源解析程序将对它们进行评估(从上到下)以找到匹配项。
这些列表可以在Felix控制台的JCR ResourceResolver选项下查看(连同配置信息);例如,https://<*host*>:<*port*>/system/console/jcrresolver
:
配置
显示当前配置(如Apache Sling Resource Resolver定义)。
配置测试
这允许您输入URL或资源路径。 单击解析或映射以确认系统将如何转换条目。
解析程
序映射条目ResourceResolver.resolve方法用于将URL映射到资源的条目列表。
映射映
射条目ResourceResolver.map方法用于将资源路径映射到URL的条目的列表。
这两个列表显示各种条目,包括应用程序定义为默认值的条目。 这些URL通常旨在简化用户的URL。
列表将与请求匹配的常规表达式模式与定义要实施的重定向的替换配对。
例如,:
图案 ^[^/]+/[^/]+/welcome$
将触发:
替换 /libs/cq/core/content/welcome.html
.
要重定向请求,请执行以下操作:
https://localhost:4503/welcome
"
到:
https://localhost:4503/libs/cq/core/content/welcome.html
在存储库中创建新的映射定义。
有许多资源有助于解释如何定义常规表达式;例如https://www.regular-expressions.info/。
在AEM的标准安装中,您可以找到以下文件夹:
/etc/map/http
这是定义HTTP协议的映射时使用的结构。 可以在/etc/map
下为要映射的任何其它协议创建其他文件夹(sling:Folder
)。
要创建将任何请求作为前缀的映射,请使用/content
将任何请求添加到https://localhost:4503/:
使用CRXDE导航到/etc/map/http
。
创建新节点:
类 sling:Mapping
型此节点类型用于此类映射,但其用途不是强制性的。
名称 localhost_any
单击保存全部。
将 以下属性添加到此节点:
名称 sling:match
类型 String
值 localhost.4503/
名称 sling:internalRedirect
类型 String
值 /content/
单击保存全部。
此操作将处理以下请求:
localhost:4503/geometrixx/en/products.html
如:
localhost:4503/content/geometrixx/en/products.html
被要求。
有关sling属性的可用信息以及如何配置这些属性的详细信息,请参阅Sling文档中的资源。
您可以使用/etc/map.publish
保存发布环境的配置。 然后,必须复制这些资源,并为发布环境的Apache Sling资源解析器的映射位置配置新位置(/etc/map.publish
)。