2012-05-02 23 views
1

我正計劃將LIGHTTPD移植到我的嵌入式系統。我的環境中沒有fork()系統調用。我可以在lighttpd源文件中看到#define HAVE_FORK,如果沒有定義,lighttpd不會進行任何fork調用。到目前爲止好..在LIGHTTPD源中不使用分叉調用

但在lighttpd的模塊「mod_cgi一樣」的一個,我可以看到它是不是由語句如果(HAVE_FORK){...}

是保護的fork()調用有一種方法可以避免在「mod_cgi」中調用fork(),我可以在編譯期間禁用此模塊嗎?

非常感謝您的幫助,請對此進行一下評論。

回答

1

lighttpd中的CGI僅支持與外部CGI進程通信(例如php-cgi),所以mod_cgi模塊需要fork()。

如果你不需要CGI,那麼只需從構建中省略mod_cgi(我猜在你的環境中,你將省略幾乎所有的模塊;只有幾個是必需的)。如果你確實需要CGI,那麼你在lighttpd上有很多工作要做,或者你應該看看一個在做CGI的web服務器。