Javascript Insert v10+
Problem this snippet solves:
This is irule that was slightly altered together to insert Javascript code prior to the tag in a website. The idea is that you can quickly insert javascipt code to a website the ADC is hosting It requires a streaming profile and works on v10
Code :
when RULE_INIT { set static::jscript {} } when HTTP_REQUEST { # Disable the stream filter by default STREAM::disable set uri [string tolower [HTTP::uri]] } when HTTP_RESPONSE { if { [HTTP::status] == 200 } { if {[HTTP::header value Content-Type] contains "text"} { set stream_find "" set stream_find_lower "" set stream_repl "" set insertJscript 1 # Do not allow the Javascript insertion if the pages end with the following switch -glob $uri { "*.ashx*" - "*.asmx*" - "*.axd*" - "*.js*" { set insertJscript 0 } default { if { [HTTP::payload] contains "META HTTP-EQUIV=\"Refresh\""} { set insertJscript 0 } } } if {$insertJscript == 1} { append stream_repl $static::jscript append stream_expression "@$stream_find@$stream_repl$stream_find@" append stream_expression "@$stream_find_lower@$stream_repl$stream_find_lower@" STREAM::expression $stream_expression STREAM::enable } } } }
Published Mar 18, 2015
Version 1.0The_Bhattman
Nimbostratus
Joined October 14, 2005
The_Bhattman
Nimbostratus
Joined October 14, 2005
- Greg_33923NimbostratusI like this irule and have used it! Is there a way to use the same irule for different VIP's, but add some logic to run a different script if the user's dns name was different? so if usera connects to sites.intranet.com and userb connects to sites.internet.com they execute a different script?