Forum Discussion
Chris_14167
Nimbostratus
Jan 29, 2010Content level routing question
Hi - I am very new to writing iRules, and right now we are using an iRule to perform a phased migration from one legacy system to a new server. Both answer on port 80. We are inspecting URI, and also...
hoolio
Cirrostratus
Jan 29, 2010Hi Chris,
When you call HTTP::payload from the HTTP_REQUEST event, only the portion of the HTTP payload in the first TCP packet is available, but the full payload (which could be in multiple packets) is not available. If you want to do pool selection based on HTTP payload content, you'd need to use HTTP::collect to buffer the full payload and do the inspection/pool selection in the HTTP_REQUEST_DATA event.
For details you can check the HTTP::collect wiki page:
http://devcentral.f5.com/wiki/default.aspx/iRules/http__collect
Note that the pool command isn't listed as a valid command in the HTTP_REQUEST_DATA event, but I think this is an omission on the wiki page--not an actual limitation.
Aaron
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