proxy:fcgi is what mod_rewrite send and the patch takes specific action to remove that 'proxy:' part. Are you saying that PHP-FPM requires that the r->filename AND the URL have that prepended? That seems weird and wrong to me...
On Jan 26, 2014, at 10:49 AM, ryo takatsuki <ryotakats...@gmail.com> wrote: > Hi, > > I am checking the new patch (thanks again!) and I'm finding some issues > trying to connect to PHP-FPM using the socket. The problem seems to be that > the filename sent to the proxy is defined as "fcgi://localhost/..." where it > usually is "proxy:fcgi://localhost/..." (being the last form the one PHP > expects). > > It seems the "proxy:" prefix is stripped when the socket is extracted. The > below patch fixes it but I'm not sure is the best solution: > > diff --git a/modules/proxy/proxy_util.c b/modules/proxy/proxy_util.c > index fb6426b..909c384 100644 > --- a/modules/proxy/proxy_util.c > +++ b/modules/proxy/proxy_util.c > @@ -1959,8 +1959,8 @@ PROXY_DECLARE(int) ap_proxy_pre_request(proxy_worker > **worker, > if (rv == APR_SUCCESS) { > char *sockpath = ap_runtime_dir_relative(r->pool, > urisock.path); > apr_table_setn(r->notes, "uds_path", sockpath); > - r->filename = ptr+1; /* so we get the scheme for > the uds */ > - *url = apr_pstrdup(r->pool, r->filename); > + r->filename = apr_pstrcat(r->pool, "proxy:",ptr+1, > NULL); > + *url = apr_pstrdup(r->pool, ptr+1); > ap_log_rerror(APLOG_MARK, APLOG_TRACE2, 0, r, > "*: rewrite of url due to UDS: %s", > *url); > } > > > Regards, > > Juanjo. > > > 2014-01-22 Plüm, Rüdiger, Vodafone Group <ruediger.pl...@vodafone.com> > Yes, forgot to mention this. You need to set at least one option get it > created. > > > > Regards > > > > Rüdiger > > > > Von: ryo takatsuki [mailto:ryotakats...@gmail.com] > Gesendet: Mittwoch, 22. Januar 2014 19:07 > An: dev@httpd.apache.org > Betreff: Re: UDS support for mod_rewrite > > > > Just a las quick comment about using a <Proxy> section to define the proxy. I > could not make it work using the below snippet: > > > > <Proxy "unix:/path/to/some.sock|fcgi://myserver"> > > </Proxy> > > > > Digging into the code, I realized the worker was only created if more > arguments were provided (which is not mentioned to be possible in the docs, > or I could not find it): > > > > <Proxy "unix:/path/to/some.sock|fcgi://myserver" timeout=300 > > > </Proxy> > > > > Then the worker is created and I can remove my extra "ProxyPass" directives. > Is it intended to only create the worker if we need to configure its settings? > > > > It makes sense but it would be a good improvement to make the worker to be > always created if it does not exists, regardless of if some more settings are > provided. > > > > Sorry about the offtopic and thanks a lot to Rüdiger for the hint! > > > > 2014/1/22 ryo takatsuki <ryotakats...@gmail.com> > > >Your "hack" has the additional benefit is being > > >a pooled connection and not a one-shot, and therefore > > >will have better performance. But that isn't related > > >to UDS at all. > > > > Well, it is related to UDS in the sense of being my solution to make my > rewrites end up serving content obtained through a Unix socket :). > > > > I initially had the old version of the UDS patch working with mod_rewrite > (using the default forward proxy worker) but it broke with newer versions of > the patch so I figured out that way of tricking mod_rewrite. > > > > Regarding using a <Proxy> section to define the workers, I see the code that > should be defining it but I'm not able to make it work. I will investigate it > a little further, thanks! > > > > Best regards, > > > > Juanjo. > > > > 2014/1/22 Daniel Ruggeri <drugg...@primary.net> > > On 1/22/2014 5:48 AM, Juan José Medina Godoy wrote: > > Do you think that approach is safe or is it likely to break at some > > point? (relaying on the workers being located by url in that way, > > without having to provide the socket in the rewrite) > > Seems safe... and quite clever, actually. > > -- > Daniel Ruggeri > > > > > > > -- > I've seen things you people wouldn't believe. > Attack ships on fire off the shoulder of Orion. > I watched C-beams glitter in the dark near Tannhauser Gate. > All those moments will be lost in time like tears in rain. > Time to die. > > > > > > > -- > I've seen things you people wouldn't believe. > Attack ships on fire off the shoulder of Orion. > I watched C-beams glitter in the dark near Tannhauser Gate. > All those moments will be lost in time like tears in rain. > Time to die. > > > > > -- > I've seen things you people wouldn't believe. > Attack ships on fire off the shoulder of Orion. > I watched C-beams glitter in the dark near Tannhauser Gate. > All those moments will be lost in time like tears in rain. > Time to die.