Не использовать вызовы форка в источнике LIGHTTPD
Я планирую портировать LIGHTTPD на мою встроенную систему. У меня нет системного вызова fork () в моей среде. Я мог видеть #define HAVE_FORK в источниках lighttpd, если это не определено, lighttpd не будет делать никаких вызовов fork. Все идет нормально..
Но в одном из модулей lighttpd "mod_cgi" я вижу вызов fork (), который не защищен оператором if (HAVE_FORK) { ...}
Есть ли способ избежать этого вызова fork () в "mod_cgi" также, можно ли отключить этот модуль во время компиляции?
Ваша помощь очень ценится, можете ли вы один комментарий об этом, пожалуйста.
1 ответ
CGI в lighttpd поддерживается только посредством связи с внешним процессом CGI (например, php-cgi
) поэтому модуль mod_cgi должен использовать fork().
Если вам не нужен CGI, просто опустите mod_cgi в сборке (в вашей среде я предполагаю, что вы пропустите почти все модули; только пара обязательна). Если вам нужен CGI, то у вас либо много работы над lighttpd, либо вам стоит посмотреть на веб-сервер, который выполняет CGI в процессе.