Forum Discussion
HTTP:uri in HTTP_Request error (not supported)
Hello,
we are using the below simple irule since years. However, with version 14.x.x or so there started an error to show up in the LTM log - also the irule seems to it's job anyway. I found an F5 document saying HTTP::uri is not allowed within HTTP_REQUEST.
I have to admit i am not god with this stuff, could someone please help to get that into an other syntax that does not through an error.
rule (simply removes the /80 from the URI):
when HTTP_REQUEST {
HTTP::uri [string map {/80/_vti_bin/Webs.asmx /_vti_bin/Webs.asmx} [HTTP::uri]]
}
error:
TCL error: /Common/alfresco_acrobat_fix <HTTP_REQUEST> - Can't call after responding - ERR_NOT_SUPPORTED (line 1) invoked from within "HTTP::uri"
Many thanks,
Ingo
Hi @Ingo,
there is a change in behavior in 14.1. Please see:
K23237429: TCL error: ERR_NOT_SUPPORTED after upgrade to version 14.1.0 or later.
Try to add a if {[HTTP::has_responded]} to your iRule, as described here: https://clouddocs.f5.com/api/irules/HTTP__has_responded.html
This should fix your issue.
KR
Daniel
- Stefan_KlotzCumulonimbus
Dear Daniel,
thanks for the change in behavior link. I ran into this issue during our update yesterday evening from 13.1.5 to 15.1.8 as well. There were two different iRules in place, which both have a redirect command including a HTTP::uri condition. Connection was reset in the browser as stated in the article and the error count of the second iRule increased.
I could solve the issue by consolidating both iRules into one and separate its content with if-statements.
Now I know the reason 😉But I don't find any hint in the release notes of version 14.1.0 for this. Or did I look at the wrong place? Just for future updates to avoid any issues due to behavior changes. I mean it makes no sense to check all relevant release notes, if not all behavior changes are included.
Regards Stefan 🙂
Hi ,
Do you have any other iRules on the same vServer ?
Ingo This might work for you.
when HTTP_REQUEST { if {[HTTP::uri] == "/80/_vti_bin/Webs.asmx"} { HTTP::uri [string map {"/80/_vti_bin/Webs.asmx" "/_vti_bin/Webs.asmx"} [HTTP::uri]] } }
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com