軟體版本
- Apache:2.0.47
- PHP:4.3.3
- MySQL:4.0.x(已編譯安裝至
/usr/local/mysql)
編譯安裝步驟
# 1. Apache
tar zxvf httpd-2.0.47.tar.gz
cd httpd-2.0.47
./configure --prefix=/usr/local/apache2 --enable-so
make && make install
# 2. PHP
tar zxvf php-4.3.3.tar.gz
cd php-4.3.3
./configure \
--with-mysql=/usr/local/mysql \
--with-apxs2=/usr/local/apache2/bin/apxs \
--enable-track-vars \
--enable-ftp
make && make install
# 3. 複製配置文件
cp php.ini-dist /usr/local/lib/php.ini
Apache 配置 (httpd.conf)
LoadModule php4_module modules/libphp4.so
AddType application/x-httpd-php .php .php3 .php4
DirectoryIndex index.html index.php index.php3 index.php4
PHP 配置 (php.ini) 關鍵項
register_globals = On ; PHP 4.2+ 預設 Off,舊代碼需開啟
magic_quotes_gpc = On ; 自動轉義,建議代碼層面手動處理後關閉
display_errors = On ; 開發環境開啟
error_reporting = E_ALL & ~E_NOTICE
session.save_path = /tmp ; 確保可寫
驗證測試
echo '' > /usr/local/apache2/htdocs/info.php
# 啟動 Apache
/usr/local/apache2/bin/apachectl start
# 瀏覽器訪問 https://server-ip/info.php
遷移建議
- PHP 4 已於 2008 年停止維護,存在已知安全漏洞(CVE-2012-1823 等)。
- 現有專案應規劃升級至 PHP 8.x,配合 Nginx + PHP-FPM,棄用 Apache mod_php。
- 若必須維護舊系統,請在隔離網絡運行,並部署 WAF(ModSecurity)防禦注入攻擊。