我有sling mappings设置,重写外部URL的传出路径.这个重写的一个例子:
/content/www-sitename/home.html将被重写为http://www.sitename.com/home.html
我还配置了LinkCheckerTransformerFactory: linkcheckertransformer.rewriteElements=["a:href","area:href","form:action","link:href","meta:content"]
页面组件上的一些HTML:
<head>
<link rel="canonical" href="/content/www-sitename/home.html" />
<meta name="canonical" content="/content/www-sitename/home.html" />
</head>
Run Code Online (Sandbox Code Playgroud)
访问时,只有链接:href被重写,meta:content不变:
<head>
<link rel="canonical" href="http://www.sitename.com/home.html" />
<meta name="canonical" content="/content/www-sitename/home.html" />
</head>
Run Code Online (Sandbox Code Playgroud)
值得注意的是,链接:href在配置linkcheckertransformer.rewriteElements包含它之前没有被重写.为什么此更改适用于link:href,而不适用于meta:content.除了创建自定义重写过滤器之外,还可以采取哪些措施来获取要重写的meta:content属性中的链接?