Спасибо, Валентин. У меня дефолтная инсталяция CentOS, никаких манипуляций с пакетами не делал, полностью майнтайнерская сборка. Однако proxy_pass на 127.0.0.1:9000 так же работает, как и fastcgi_pass. Что и вызвало вопросы.
Обе директивы указанные в моем письме рабочие.
16 октября 2012 г., 14:43 пользователь Валентин Бартенев <ne@xxxxxxxx> написал:
On Tuesday 16 October 2012 12:24:49 Andrey Semenoff wrote:
> Добрый день!
>
> Подскажите пожалуйста, в чем различие в работе nginx + php-fpm с такими
> локейшнами
>
> location / {
>
> > proxy_pass 127.0.0.1:9000;
>
> proxy_ ...
>
> }
>
> или
>
> > location / {
> >
> > fastcgi_pass 127.0.0.1:9000;
> > fastcgi_...
> >
> > }
>
> т.е. я не могу понять при использовании php-fpm, какую лучше директиву
> использовать fastcgi_ или proxy_
proxy_* - это директивы модуля ngx_http_proxy_module, само название
которого говорит за себя: он предназначен для реверс-проксирования
запросов и позволяет передавать запросы другому HTTP(S) серверу.
fastcgi_* - директивы модуля ngx_http_fastcgi_module, реализующего
интерфейс FastCGI для связи с приложением или сервером приложений
работающим по этому интерфейсу. Одним из примеров такого сервера
приложений является php-fpm.
Исходя из этого, очевидно, что совместно с php-fpm вы можете использовать
только fastcgi_pass. Попытка передать демону php-fpm запрос по протоколу
HTTP с помощью директивы proxy_pass закончится ошибкой.