On 10/02/2007 11:21 PM, Jim Jagielski wrote: > > On Oct 2, 2007, at 4:39 PM, Roy T. Fielding wrote: > >> On Oct 2, 2007, at 1:34 PM, William A. Rowe, Jr. wrote: >> >>> Roy T. Fielding wrote: >>>> >>>> I was only talking about the OPTIONS /path case. * is a special >>>> case of a true null request -- it should only deal with server >>>> capabilities and ignore Location/Directory configs. >>> >>> Could you clarify, though? If PROPGET or PUT is supported on some >>> subset of the server space, is it advertised by OPTIONS *? >> >> Nope. * is not a resource. Since it is impossible to know the >> mask of the entire resource space, HTTP does not require that >> Allow be included on OPTIONS * responses. Just committed a fix. >> > > Wow. That I would not have understood from the RFC at all.
Slightly off topic, but this gives me the idea that we could use OPTIONS * as some kind of ping / health check for pooled connections in mod_proxy_http before sending a request (at least in the reverse proxy case before sending a request that is not idempotent or after the connection has not been used for a certain amount of time). The current is_connected check has a race condition if the keepalive timer of the backend server kills the connection just after our check and before it received our request. Regards RĂ¼diger
