Forum Discussion
This solution SOL2167: Constructing HTTP requests for use with the HTTP or HTTPS application health monitor covers the functionality.
This is a portion of the solution: 10.2.x and 11.x
Each instance of \r is translated to a CR character (0x0d).
Each instance of \n is translated to a LF character (0x0a).
No CR/LF sequences are appended to the end of the Send String unless Basic Authentication is enabled.
When Basic Authentication or NTLM / NTLMv2 Authentication (version 11.1 and later) is enabled by configuring a User Name and Password in the monitor definition, the system inserts the Authorization header and a terminating double CR/LF sequence (0x0d 0x0a 0x0d 0x0a) after the last character in the Send String.
9.4.x, 9.6.x, 10.0.x, 10.1.x
Each instance of \r is translated to a CR character (0x0d).
Each instance of \n is translated to a LF character (0x0a).
A double CR/LF sequence (0x0d 0x0a 0x0d 0x0a) is appended to the end of the Send String.
9.2.x and 9.3.x
Each instance of \r is translated to a CR character (0x0d).
Each instance of \n is translated to a LF character (0x0a).
A single CR/LF sequence (0x0d 0x0a) is appended to the end of the Send String.
9.0.x and 9.1.x
Each instance of \n is translated to a CR+LF character sequence (0x0d 0x0a).
A single CR/LF sequence (0x0d 0x0a) is appended to the end of the Send String.
- silvajai_01_131Aug 16, 2013NimbostratusI tried modifying the send string to GET /cgi-bin/ecv.cgi HTTP/1.0\r\n\r\n but still doesn't seem to be working right. I performed a tcpdump on the heth monitor to one of the pool nodes and noticed that the connection attempt looks like is being made on port 3306, which is the port assigned to the pool. I was under the impression that since the health monitored was configured for HTTP, it would use port 80 by default. I tried changing the destination port to HTTP and it seems to work. The question I have is do I need to specify the destination port even though I have already specified the health monitor's "default from" is already ser to be HTTP based.
- BinaryCanary_19Aug 16, 2013Historic F5 AccountIf you don't specify an alias port on the montor, it will always use what the pool member is configured on. The fact that the monitor type is "http" implies nothing about it's behaviour with regards to network ports. It just means it's going to treat the connections it establishes as to a server capable of reading and responding to HTTP.