Forum Discussion
RobS
Altostratus
Dec 28, 2012Custom HTTP monitor that checks for existence of an image
In looking through DevCentral and AskF5 I haven't found the exact scenario I am in. We have a brand new pair of 3900's running 11.2.1 and we are only doing basic load balancing for a new Blackboard e...
Peter_Z
Cirrus
Jan 02, 2013Hi Rob,
Of course LTM supports HTTP1.1 and if your server supports it, why no to use it - even for the monitor. Based on your info, you did two mistakes when testing/configuring the monitors:
1. MONITOR SYNTAX
- The original monitor was correct and, as you said, it was working (GET /branding/_1_1/logo_uchc.gif HTTP/1.1\r\nHost: host.domain.com\r\nConnection: Close\r\n\r\n)
- The other two variations were missing the HOST header, which is mandatory for HTTP1.1 protocol thus they didn't work as the server was expecting the host header in HTTP requests
- The value of the host is not significant unless the server expects specific host value or it's configured to return different content based on the host values; You can use virtual domain name, IP address or the real server name; I believe 'blank' value or space might also work, but I'm not 100% sure
- The 'Connection: Close' header is not mandatory, but it's good to use it so you don't have too many opened TCP connections to the server if your monitor sends the health checks too often
The following two SEND strings should both work for you:
GET /branding/_1_1/logo_uchc.gif HTTP/1.1\r\nHost: host.domain.com\r\nConnection: Close\r\n\r\n
GET /branding/_1_1/logo_uchc.gif HTTP/1.1\r\nHost: host.domain.com\r\n\r\n
2. TELNET TEST
- Note that when trying to get to the server directly by telnet and then typing the GET request is different from the send strings specified in the LTM monitor:
- \r\n sequence is represented by hitting the ENTER key in the CLI, so if you want to test exactly the same string specified in the LTM monitor from the CLI, you need to separate each request line or header with the enter key; LAST line must be followed by blank line, which is DOUBLE ENTER in CLI or \r\n\r\n sequence in the LTM monitor:
telnet {server_name} 80{ENTER}
GET /branding/_1_1/logo_uchc.gif HTTP/1.1{ENTER}
Host: host.domain.com{ENTER}
{ENTER}
or
telnet {server_name} 80{ENTER}
GET /branding/_1_1/logo_uchc.gif HTTP/1.1{ENTER}
Host: host.domain.com{ENTER}
Connection: Close{ENTER}
{ENTER}
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)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