php-cgi, похоже, исчез в PHP 5.3.1. Я пробовал оба флага --enable-cgi и --disable-cli для ./configure, но это не создает двоичный файл в подкаталоге sapi/cgi.
решение1
Я понимаю, что я сильно опоздал, но думаю, что PHP FPM (FastCGI Process Manager) — это замена.
Вам необходимо использовать PHP 5.3.3 и использовать --enable-fpm
флаг конфигурации или использовать патч вphp-fpmвеб-сайт для более ранних версий. Исполняемый файл php-fpm создается в sapi/fpm.
решение2
Похоже, что php-fpm и php-cgi являются взаимоисключающими — то есть, если вы используете --enable-fpm
опцию configure, она не будет создавать исполняемый файл php-cgi.
Если вам необходимо наличие обоих, обходным решением будет выполнить сборку без --enable-fpm
, сохранить копию php-cgi
исполняемого файла, повторно настроить с помощью --enable-fpm
, а затем выполнить повторную сборку.
решение3
Я решил ту же проблему.
Похоже, когда вы пытаетесь ./configure
использовать --with-apxs
блок -that для компиляции версии php-cgi. Просто не устанавливайте это.
решение4
Я использую следующие ключи для ./configure, однако это для CentOS 5 и PHP 5.2.13, надеюсь, это как-то поможет:
./configure --prefix=$INSTALL_BASE \
--with-config-file-path=$INSTALL_BASE/etc/ \
--enable-force-cgi-redirect \
--enable-mbstring \
--enable-fastcgi \
--enable-gd-native-ttf \
--enable-ftp \
--enable-sockets \
--enable-wddx \
--enable-sqlite-utf8 \
--enable-mbstring \
--enable-mbregex \
--enable-calendar \
--enable-zip \
--with-libxml-dir=$INSTALL_BASE \
--with-freetype-dir=$INSTALL_BASE \
--with-openssl \
--with-mhash=$INSTALL_BASE \
--with-mcrypt=$INSTALL_BASE \
--with-zlib-dir=$INSTALL_BASE \
--with-bz2 \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--with-gd \
--with-iconv=$INSTALL_BASE \
--with-curl=$INSTALL_BASE \
--with-pgsql \
--with-gettext \
--with-imap=$INSTALL_BASE \
--with-imap-ssl=/usr \
--enable-bcmath \
--with-pear \
--with-xmlrpc