inline C code and post data

Cal Heldenbrand cal at fbsdata.com
Thu Dec 31 23:32:15 CET 2009


Hi everyone,

I just started experimenting with the coolness of using inline C in VCL, and
I've run into a bit of a hurdle -- I can't find any VRT functions that allow
me to dig into the request body where the post data is at.

For some background, I'm working on using varnish for dynamic pages that hit
our database, but aren't updated frequently.  I have some inline code in
vcl_hash that adds a user ID to the hash from the get parameters, and also
adds a "skip list" to ignore variables.  (For stuff like timestamps being
passed in that don't affect the output of the page)  I attempted hashing on
our per-user cookie value, but I have a lot of one way hashes in there and
it makes it difficult to purge an individual page for a particular user.
Passing a user ID via a parameter also makes it easier to "turn on" varnish
for a small set of high volume pages, and pattern match that in our load
balancer to direct to our varnish cluster.

I have all of this working, but much of our content uses post requests due
to some dumb feature in MSIE that limits the length of a get request to 2048
characters.

If anyone is interested in this functionality, let me know.  After it's
finished I could wrap this up into a plugin package and publish it
somewhere.

Thanks for any help!

--Cal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-dev/attachments/20091231/a6bcef44/attachment-0002.html>


More information about the varnish-dev mailing list