Forum Discussion
Sai_131331
Nimbostratus
Aug 10, 2016Irule error-Command not valid in the current scope
My irule is:
rule shop_lkqcorp_cache_expiry {
when HTTP_REQUEST {
if {[HTTP::method] eq "GET" and [HTTP::uri] eq "/"}{
set expire_content_timeout 300
} else {
set expire_content_timeou...
ekaleido_26616
Cirrocumulus
Aug 10, 2016This maybe? But I think you'll want to do your "[clock format [expr ([clock seconds]+$expire_content_timeout)] -format "%a, %d %h %Y %T GMT" -gmt true]" after the if, set it as a variable and then place the variable inside the HTTP::header replace.
when HTTP_REQUEST {
if {[HTTP::method] eq "GET" and [HTTP::uri] eq "/"}{
set expire_content_timeout 300
} else {
set expire_content_timeout [findclass [string tolower [string range [HTTP::path] [string last . [HTTP::path]] end]] static_cache_24hrs " "]
}
}
when HTTP_RESPONSE {
if { $expire_content_timeout ne "" } {
HTTP::header replace "Cache-Control" "max-age=$expire_content_timeout, public" HTTP::header replace "Expires" "[clock format [expr ([clock seconds]+$expire_content_timeout)] -format "%a, %d %h %Y %T GMT" -gmt true]"
} else {
HTTP::header replace "Cache-Control" "private"
HTTP::header replace "Expires" "-1"
}
}
Sai_131331
Nimbostratus
Aug 10, 2016My objective of writing this iRule is that I want to set an Expiry date to static content that needs to be cached by the client's browser.
Recent Discussions
Related Content
DevCentral Quicklinks
* 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
Discover DevCentral Connects