2010-08-24 80 views
0

我在lighttpd的1.4.19源代碼的閱讀,現在我被困在功能fcgi_spawn_connection,爲什麼lighttpd mod_fastcgi會啓動偵聽套接字?

 
if (-1 == connect(fcgi_fd, fcgi_addr, servlen)) { 
... 
bind(fcgi_fd, fcgi_addr, servlen) 
... 
listen(fcgi_fd, 1024) 
} 

的問題是,爲什麼的mod_fastcgi建立一個監聽套接字,它是什麼用途的?是不是,mod_fastcgi作爲客戶端連接到fastcgi進程(等,php-cgi)? - php-cgi進程將會監聽。

謝謝。

回答

1

好的,我以爲我明白了。

php-cgi不會創建偵聽套接字,而是從fcgi_spawn_connection繼承,而此偵聽套接字已被dup2 FCGI_LISTENSOCK_FILENO(通常爲0)。