Issue w/ nginx in hybrid static/php load balancer scenario

Mike Javorski mike.javorski at gmail.com
Sun Feb 10 09:51:17 MSK 2008


Thanks Denis. The problem w/ your solution is there is lots of
directories. I don't want to have to create entries for each. I
suppose I could to a regex for .*/$ but some of the directories have
index.html instead of index.php, and I need to support that as well
:-(.

Any other options/suggestions?

- mike

On Feb 9, 2008 10:42 PM, Denis F. Latypoff <denis at gostats.ru> wrote:
> Hello Mike,
>
>
> Sunday, February 10, 2008, 12:32:14 PM, you wrote:
>
> > I have nginx set up as a load balancer in front of two machines
> > running fastcgi/php, and nginx for static content. The desired goal is
> > to have all php pages (including the site index pages of .*/index.php)
> > processed by the fastcgi/php upstream, and everything else provided by
> > the static servers. The following is what I have and what I believe
> > should have worked, but it appears to run all directory paths via the
> > static rule, rather than the php rule which matches the index.
>
> > To sum up:
> > / -- via static system (WRONG)
> > /index.php -- via fastcgi/php system (RIGHT)
> > /blah/ -- via static system (WRONG)
> > /blah/index.php -- via fastcgi/php system (RIGHT)
>
> > nginx version is 0.6.25, Help! :-)
>
> > tia,
>
> > - mike
>
> > My Config File (the relevent bits anyway):
> > ---------------------------------------------------
>
> > http {
> >     upstream  static-pool {
> >         server  192.168.7.40:80;
> >         server  192.168.7.41:80;
> >     }
>
> >     upstream php-fcgi-pool {
> >         server  192.168.7.40:7000;
> >         server  192.168.7.41:7000;
> >     }
>
> >     server {
> >         listen  80;
> >         root    /website/htdocs;
> >         index   index.php;
> >         fastcgi_index   index.php;
> >         include     /etc/nginx/fastcgi_params;
>
> >         location / {
> >             proxy_pass http://static-pool/website/htdocs/;
> >         }
>
> +         location = / {
> +             fastcgi_pass    php-fcgi-pool;
> +         }
>
> +         location = /blah/ {
> +             fastcgi_pass    php-fcgi-pool;
> +         }
>
>
> >         location ~ \.php$ {
> >             fastcgi_pass    php-fcgi-pool;
> >         }
> >     }
> > }
>
>
>
> --
> Best regards,
>  Denis                            mailto:denis at gostats.ru
>
>
>





More information about the nginx mailing list