Forum Discussion

Joern_Oltmann's avatar
Joern_Oltmann
Icon for Nimbostratus rankNimbostratus
Mar 17, 2016

Requirement deliver Status Page if a specify URL response with error code 5xx

Hi All,

 

My BigIP should be deliver the following status page if the URL "/internal_api" response with an error code 5xx. How can I realize this with an iRule. Would be great someone can help me.

 

Status Page:

 

Header: Content-Type: application/json Response-Code: 500 Response-Body:

 

{"error_type":"internal_server_error"}

 

Thx Joern

 

4 Replies

  • Not tested, but this should do the trick:

    when HTTP_REQUEST {
        set path [HTTP::path]
    }
    
    when HTTP_RESPONSE {
        if { [HTTP::status] starts_with "5" && $path eq "/internal_api" } {
            HTTP::respond 500 "{\"error_type\":\"internal_server_error\"}" Content-Type "application/json"
        }
    }
    
    • Joern_Oltmann's avatar
      Joern_Oltmann
      Icon for Nimbostratus rankNimbostratus
      Hi Vernon, thanks a lot, I will test it on ou lab and come back if it's work!
  • Vernon_97235's avatar
    Vernon_97235
    Historic F5 Account

    Not tested, but this should do the trick:

    when HTTP_REQUEST {
        set path [HTTP::path]
    }
    
    when HTTP_RESPONSE {
        if { [HTTP::status] starts_with "5" && $path eq "/internal_api" } {
            HTTP::respond 500 "{\"error_type\":\"internal_server_error\"}" Content-Type "application/json"
        }
    }
    
    • Joern_Oltmann's avatar
      Joern_Oltmann
      Icon for Nimbostratus rankNimbostratus
      Hi Vernon, thanks a lot, I will test it on ou lab and come back if it's work!