若要在 centos (至少) 上執行單獨的 apache 和 php 程序,而不必
為每個執行個體編譯和安裝單獨的版本
這應該可以起作用
使用 yum 安裝 apache 和 php。
這會給您 (對於第一個執行個體)
/etc/httpd/*, /etc/sysconfig/httpd, /etc/init.d/httpd, /etc/php.ini
和 /etc/php.d/*。
將所有這些東西複製到
/etc/httpd2/*, /etc/sysconfig/httpd2, /etc/init.d/httpd2, /etc/php2.ini
和 /etc/php2.d/*。
然後
編輯 /etc/httpd2/* 中的 apache 設定檔,以反映新的
您希望此 apache 監聽的連接埠 (別忘了 conf.d 下的 ssl.conf)
和任何其他不同的設定,例如日誌檔
目的地和虛擬主機。
針對您希望其他 php 執行的任何特定設定編輯 php2.ini
執行個體擁有。
若要在此新的 apache 執行個體中擁有一個完全獨立的 php,其中包含其自己的
包含的模組,請編輯 /etc/sysconfig/httpd2 並新增以下內容
PHPRC=/etc/php2.ini
export PHPRC
PHP_INI_SCAN_DIR=/etc/php2.d
export PHP_INI_SCAN_DIR
這將在第二個 apache/php 之前設定環境變數
執行個體已啟動。
然後編輯 /etc/init.d/httpd2 並將所有對 httpd 的引用變更
(例如 lockfile、pidfile 和 sysconfig) 到 httpd2。不過,別動
可執行檔名稱 :)
並變更此
LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS
為此
LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd -f /etc/httpd2/conf/httpd.conf $OPTIONS
.. 這樣此 apache 才能找到自己的設定檔。
然後,如果需要,請執行 'chkconfig --add /etc/init.d/httpd2' 以使其
在啟動時啟動,您應該會有兩個具有兩個獨立的 apache 執行個體
php 模組,並具有其自己的專用設定。