php-cgi 似乎在 PHP 5.3.1 中消失了。我已經嘗試了 ./configure 的 --enable-cgi 和 --disable-cli 標誌,但它不會在 sapi/cgi 子目錄下建立二進位檔案。
答案1
我意識到我在這方面已經很晚了,但我認為 PHP FPM(FastCGI 進程管理器)是替代品。
您需要使用 PHP 5.3.3 並使用--enable-fpm
配置標誌,或使用補丁php-fpm早期版本的網站。在 sapi/fpm 中建立了一個名為 php-fpm 的可執行檔。
答案2
看來 php-fpm 和 php-cgi 是互斥的——也就是說,如果您使用--enable-fpm
設定選項,它將不會建立 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