since there is if-statement (HTTP::uri eq /sp) before switch, /logo and /background won't hit the switch-case (because it is not equal to /sp)
Correct. You should just need to remove the if layer:
when HTTP_REQUEST {
log local0. "HTTP_REQ: Requested Hostname: [HTTP::host] URI: [HTTP::uri]"
switch [HTTP::uri] {
"/sp" {
HTTP::respond 200 content [ifile get "index"] "Content-Type" "text/html"
}
"/logo" {
HTTP::respond 200 content [ifile get "logo"] "Content-Type" "image/png"
}
"/background" {
HTTP::respond 200 content [ifile get "background"] "Content-Type" "image/jpeg"
}
}
}