You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@knox.apache.org by "Attila Magyar (Jira)" <ji...@apache.org> on 2023/06/27 13:09:00 UTC
[jira] [Updated] (KNOX-2931) Some special characters in the rewrite rule cannot be escaped
[ https://issues.apache.org/jira/browse/KNOX-2931?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Attila Magyar updated KNOX-2931:
--------------------------------
Description:
HTML content:
{code}
<td><a href="{{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}" target="_blank">{{typestat.hostname}}</a></td>
{code}
Rule:
{code}
<rule dir="OUT" name="OZONE-SCM/ozone-scm/outbound/datanode/address">
<match pattern="{{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}"/>
<rewrite template="{gateway.url}/ozone-scm/datanode/index.html?host={{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}} "/>
</rule>
{code}
The goal is to prepend knox URL in front of the href and have:
{code}
https://KNOX/gateway/topology/service?host={{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}
{code}
It seems that the {{ ... }} part is interpreted as a place holder and the host part is completely omitted.
Interestingly adding a dummy space at the end solves it.
cc: [~zitadombi]
was:
HTML content:
{code}
<td><a href="{{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}" target="_blank">{{typestat.hostname}}</a></td>
{code}
{code}
<rule dir="OUT" name="OZONE-SCM/ozone-scm/outbound/datanode/address">
<match pattern="{{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}"/>
<rewrite template="{gateway.url}/ozone-scm/datanode/index.html?host={{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}} "/>
</rule>
{code}
The goal is to prepend knox URL in front of the href and have:
{code}
https://KNOX/gateway/topology/service?host={{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}
{code}
It seems that the {{ ... }} part is interpreted as a place holder and the host part is completely omitted.
Interestingly adding a dummy space at the end solves it.
cc: [~zitadombi]
> Some special characters in the rewrite rule cannot be escaped
> -------------------------------------------------------------
>
> Key: KNOX-2931
> URL: https://issues.apache.org/jira/browse/KNOX-2931
> Project: Apache Knox
> Issue Type: Task
> Reporter: Attila Magyar
> Assignee: Attila Magyar
> Priority: Major
>
> HTML content:
> {code}
> <td><a href="{{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}" target="_blank">{{typestat.hostname}}</a></td>
> {code}
> Rule:
> {code}
> <rule dir="OUT" name="OZONE-SCM/ozone-scm/outbound/datanode/address">
> <match pattern="{{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}"/>
> <rewrite template="{gateway.url}/ozone-scm/datanode/index.html?host={{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}} "/>
> </rule>
> {code}
> The goal is to prepend knox URL in front of the href and have:
> {code}
> https://KNOX/gateway/topology/service?host={{typestat.portval.toLowerCase()}}://{{typestat.hostname}}:{{typestat.portno}}
> {code}
> It seems that the {{ ... }} part is interpreted as a place holder and the host part is completely omitted.
> Interestingly adding a dummy space at the end solves it.
> cc: [~zitadombi]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)