sendfilev() failed

Igor Sysoev is at rambler-co.ru
Mon Nov 28 12:59:59 MSK 2005


On Mon, 28 Nov 2005, daz wrote:

> nginx 0.3.12+spawn-fcgi+php
> Solaris 8, Sparc64
>
> Если биндить php на порт, все работает, если на сокет - 502 Bab Gatway и в 
> логах nginx
>
> 2005/11/28 13:44:39 [crit] 19190#0: *70 sendfilev() failed (124: Address 
> family not supported by protocol family) while sending request to upstream, 
> ... URL: "/a.php", upstream: "fastcgi://unix:/var/tmp/php-cgi.sock",...
>
> Сам сокет есть, и nginx и php работают под одним юзером.
> Кто-нибудь может подсказать, что не так?

man sendfilev:
                                               fildes  is  a  file
      descriptor  to  a  regular  file or to a AF_NCA, AF_INET, or
      AF_INET6 family type SOCK_STREAM socket  that  is  open  for
      writing.

Юникс сокеты имеют тип AF_UNIX или AF_LOCAL.

Как временный workaround, нужно запретить sendfile для location, которое
занимается php запросами. В следующей версии sendfilev() в данной ситуации
не будет использоваться.


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list