# 下載原始碼與 patch
wget https://php-fpm.org/downloads/php-5.2.10-fpm-0.5.13.diff.gz
wget https://museum.php.net/php5/php-5.2.10.tar.bz2
# 安裝建置依賴
apt-get update
apt-get install build-essential libxml2-dev libmcrypt-dev libssl-dev \
libldap2-dev libmhash-dev libmysqlclient15-dev libcurl4-openssl-dev \
libpng12-dev libjpeg-dev libsasl2-dev
tar jxf php-5.2.10.tar.bz2
cd php-5.2.10
gunzip -c ../php-5.2.10-fpm-0.5.13.diff.gz | patch -p1
./configure \
--prefix=/opt/php \
--with-iconv --with-zlib --enable-xml --disable-rpath \
--enable-discard-path --enable-safe-mode --enable-bcmath \
--enable-shmop --enable-sysvsem --enable-inline-optimization \
--with-curl --with-curlwrappers --enable-mbregex \
--enable-fastcgi --enable-fpm --enable-force-cgi-redirect \
--enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf \
--with-openssl --with-mhash --enable-pcntl --enable-sockets \
--with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip \
--enable-soap --without-pear --with-mysql --with-mysqli \
--enable-sqlite-utf8 --with-pdo-mysql --enable-ftp \
--with-jpeg-dir --with-freetype-dir --with-png-dir
make && make install
# 複製預設 php.ini
cp php.ini-dist /opt/php/lib/php.ini
# 建立服務腳本連結
ln -s /opt/php/sbin/php-fpm /etc/init.d/php-fpm
update-rc.d -f php-fpm defaults
# 啟動服務
/etc/init.d/php-fpm start
vi /opt/php/etc/php-fpm.conf
# 1. 開啟錯誤顯示(開發環境)
display_errors = 1
# 2. 設定郵件發送路徑
sendmail_path = /usr/sbin/sendmail -t -i
# 3. 指定執行使用者/群組(安全性)
user = www-data
group = www-data
# 4. 最大子進程數(依記憶體調整,建議 50-200)
max_children = 50
# 5. 請求處理超時
request_terminate_timeout = 60s
# 6. 慢日誌(排查效能瓶頸)
slowlog = /var/log/php-fpm-slow.log
request_slowlog_timeout = 10s
PHP 5.2 已於 2011 年停止維護,極不建議用於新專案。現代專案請直接使用 Ubuntu 官方倉庫的 PHP 7.4/8.x 系列:
apt-get install php-fpm php-mysql php-gd php-curl php-mbstring php-xml php-zip