HonestQiao 回復于:2004-05-29 16:54:19 |
[code:1:72b49e9f07]##################################################################
# PHP超級配置模塊--PHP4,PHP5,module,cgi任你玩轉--應用于Apache # ################################################################## # 配置版本 通用版v1.01 # # 配置編寫 喬楚/HonestQiao # # 編寫日期 2004年5月29日 # # 聯系方式 QQ:5601680 MSN:honestqiao@hotmail.com # ################################################################## # 主頁地址: http://w.yi.org/ # # 論壇地址: http://bbs.chinaunix.net/forum/viewforum.php?f=13 # ################################################################## ################################################################## # 版權聲明 # # 本PHP超級配置模塊系喬楚(HonestQiao)所寫,你可以任意使用和傳播# #本PHP超級配置模塊,但是請保留配置內容以上的聲明部分(因為本聲明不 # #會對你的實際配置造成任何影響),并且不得以任何方式表明是你寫了本 # #PHP超級配置模塊. # # 謝謝你的使用,歡迎批評建議和報告錯誤. # ################################################################## SetEnv php_control_status not_php_control_status <IfDefine Apache=Apache> SetEnv php_control_status Apache <IfDefine php=php4> SetEnv php_control_status Apache_php4 <IfDefine type=mod> SetEnv php_control_status Apache_php4_mod LoadModule php4_module /usr/local/php-4.3.6/sapi/php4apache.dll #請修改為實際的路徑 #AddModule mod_php4.c AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 #PHPINIDir /usr/local/etc/php/php4.ini #請將php.ini放置到Apache的安裝目錄 AddType application/x-httpd-php-source .phps Alias "/server-php" "/usr/local/etc/php/phpinfo.php4" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> <IfDefine !type=mod> SetEnv php_control_status Apache_php4_not_mod <IfDefine type=cgi> SetEnv php_control_status Apache_php4_cgi ScriptAlias /php/ "/usr/local/php-4.3.6/" #請修改為實際的路徑 Action application/x-httpd-php "/php/php.exe" #修改為實際的路徑 #請將php.ini放置到Apache的安裝目錄 AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 AddType application/x-httpd-php-source .phps Alias "/server-php" "/usr/local/etc/php/phpinfo.php4" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> </IfDefine> </IfDefine> <IfDefine !php=php4> SetEnv php_control_status Apache_not_php4 <IfDefine php=php5> SetEnv php_control_status Apache_php5 <IfDefine type=mod> SetEnv php_control_status Apache_php5_mod LoadModule php5_module /usr/local/php-5.0.0RC2/php5apache.dll #請修改為實際的路徑 #AddModule mod_php5.c AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 AddType application/x-httpd-php .php5 AddType application/x-httpd-php-source .phps #PHPINIDir /usr/local/etc/php/php5.ini #請將php.ini放置到Apache的安裝目錄 Alias "/server-php" "/usr/local/etc/php/phpinfo.php5" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> <IfDefine !type=mod> SetEnv php_control_status Apache_php5_not_mod <IfDefine type=cgi> SetEnv php_control_status Apache_php5_cgi ScriptAlias /php/ "/usr/local/php-5.0.0RC2/" #請修改為實際的路徑 Action application/x-httpd-php "/php/php-cgi.exe" #修改為實際的路徑 #請將php.ini放置到Apache的安裝目錄 AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 AddType application/x-httpd-php .php5 AddType application/x-httpd-php-source .phps Alias "/server-php" "/usr/local/etc/php/phpinfo.php5" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> </IfDefine> </IfDefine> </IfDefine> </IfDefine> <IfDefine !Apache=Apache> SetEnv php_control_status not_Apache <IfDefine Apache=Apache2> SetEnv php_control_status Apache2 <IfDefine php=php4> SetEnv php_control_status Apache2_php4 <IfDefine type=mod> SetEnv php_control_status Apache2_php4_mod LoadModule php4_module /usr/local/php-4.3.6/sapi/php4apache2.dll #請修改為實際的路徑 #AddModule mod_php4.c AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 PHPINIDir /usr/local/etc/php/php4.ini #請修改為實際的路徑 AddType application/x-httpd-php-source .phps Alias "/server-php" "/usr/local/etc/php/phpinfo.php4" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> <IfDefine !type=mod> SetEnv php_control_status Apache2_php4_not_mod <IfDefine type=cgi> SetEnv php_control_status Apache2_php4_cgi ScriptAlias /php/ "/usr/local/php-4.3.6/" #請修改為實際的路徑 Action application/x-httpd-php "/php/php.exe" #修改為實際的路徑 #請將php.ini放置到Apache的安裝目錄 AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 AddType application/x-httpd-php-source .phps Alias "/server-php" "/usr/local/etc/php/phpinfo.php4" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> </IfDefine> </IfDefine> <IfDefine !php=php4> SetEnv php_control_status Apache2_not_php4 <IfDefine php=php5> SetEnv php_control_status Apache2_php5 <IfDefine type=mod> SetEnv php_control_status Apache2_php5_mod LoadModule php5_module /usr/local/php-5.0.0RC2/php5apache2.dll #請修改為實際的路徑 #AddModule mod_php5.c AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 AddType application/x-httpd-php .php5 AddType application/x-httpd-php-source .phps PHPINIDir /usr/local/etc/php/php5.ini #請修改為實際的路徑 Alias "/server-php" "/usr/local/etc/php/phpinfo.php5" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> <IfDefine !type=mod> SetEnv php_control_status Apache2_php5_not_mod <IfDefine type=cgi> SetEnv php_control_status Apache2_php5_cgi ScriptAlias /php/ "/usr/local/php-5.0.0RC2/" #請修改為實際的路徑 Action application/x-httpd-php "/php/php-cgi.exe" #修改為實際的路徑 #請將php.ini放置到Apache的安裝目錄 AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 AddType application/x-httpd-php .php5 AddType application/x-httpd-php-source .phps Alias "/server-php" "/usr/local/etc/php/phpinfo.php5" #請修改為實際的路徑 Alias "/phpMyAdmin" "/usr/local/phpMyAdmin-2.6.0-alpha2/" #請修改為實際的路徑 </IfDefine> </IfDefine> </IfDefine> </IfDefine> </IfDefine> </IfDefine>[/code:1:72b49e9f07] |
HonestQiao 回復于:2004-05-29 16:55:43 |
[code:1:33da9eb370]#使用方法:
# 設備命令: # 連接配置: # 將以上PHP超級配置模塊保存為一個文件,名稱為php.conf,然后在Apache的配置文件之中,使用Include "/path/to/php.conf"來引用PHP超級配置模塊; # 修改PHP超級配置模塊之中提示需要修改的部分,一般是修改為你的文件所在的實際路徑. # # 啟動命令: # ApacheControl -k start -D Apache=ApacheVersion php=phpVersion type=RunType # 假設啟動apache的文件名為httpd,執行指令如下: # httpd -k start -D Apache=ApacheVersion php=phpVersion type=RunType # ApacheVersion:表示Apache的版本Apache,Apache--表示Apache1;Apache2--表示Apache2; # phpVersion:表示PHP的版本,php4--表示PHP4;php5--表示PHP5; # RunType:表示運行模式,mod--表示以module(模塊)方式運行;cgi--表示以CGI方式運行 # # 通道信息: # PHP超級配置模塊狀態:表示環境變量之中PHP超級配置的狀態,可以通過CGI探針或者phpinfo()來查看. # 說明:狀態名稱:php_control_status # 狀態值: not_php_control_status: 表示沒有處于PHP超級配置模塊 # Apache : 表示進入Apache1配置區域 # Apache_php4 : 表示進入Apache1的PHP4配置區域 # Apache_php4_mod : 表示進入Apache1的PHP4的module(模塊)方式配置區域 # Apache_php4_not_mod : 表示進入Apache1的PHP4的非module(模塊)方式配置區域 # Apache_php4_cgi : 表示進入Apache1的PHP4的CGI方式配置區域 # Apache_not_php4 : 表示進入Apache1的非PHP4配置區域 # Apache_php5 : 表示進入Apache1的PHP5配置區域 # Apache_php5_mod : 表示進入Apache1的PHP5的module(模塊)方式配置區域 # Apache_php5_not_mod : 表示進入Apache1的PHP5的非module(模塊)方式配置區域 # Apache_php5_cgi : 表示進入Apache1的PHP5的CGI方式配置區域 # # not_Apache : 表示進入非Apache1配置區域 # Apache2_php4 : 表示進入Apache2的PHP4配置區域 # Apache2_php4_mod : 表示進入Apache2的PHP4的module(模塊)方式配置區域 # Apache2_php4_not_mod : 表示進入Apache2的PHP4的非module(模塊)方式配置區域 # Apache2_php4_cgi : 表示進入Apache2的PHP4的CGI方式配置區域 # Apache2_not_php4 : 表示進入Apache2的非PHP4配置區域 # Apache2_php5 : 表示進入Apache2的PHP5配置區域 # Apache2_php5_mod : 表示進入Apache2的PHP5的module(模塊)方式配置區域 # Apache2_php5_not_mod : 表示進入Apache2的PHP5的非module(模塊)方式配置區域 # Apache2_php5_cgi : 表示進入Apache2的PHP5的CGI方式配置區域 #[/code:1:33da9eb370] |
HonestQiao 回復于:2004-05-29 17:17:42 |
[code:1:284d7d5052]#測試工程:
# 例如在Window2000環境下,執行以下設備命令: # cd /path/to/apache/ # apache -k start -D Apache=Apache php=php4 type=mod # 執行被設備命令之后,php_control_status的值變為Apache_php4_mod,表示處于Apache1的PHP4的Module模式之下; # # cd /path/to/apache/ # apache -k start -D Apache=Apache php=php5 type=cgi # 執行被設備命令之后,php_control_status的值變為Apache_php5_cgi,表示處于Apache1的PHP5的CGI模式之下; # # cd /path/to/apache2/bin/ # apache -k start -D Apache=Apache2 php=php4 type=cgi # 執行被設備命令之后,php_control_status的值變為Apache2_php4_cgi,表示處于Apache2的PHP4的CGI模式之下; # # cd /path/to/apache2/bin/ # apache -k start -D Apache=Apache2 php=php5 type=mod # 執行被設備命令之后,php_control_status的值變為Apache2_php5_mod,表示處于Apache2的PHP5的Module模式之下; # # #常見問題: # 1.啟動時提示錯誤,且錯誤出在PHP超級配置模塊的相關行,一般表示相關的設置路徑不正確 # 2.啟動成功但是沒有調用PHP,你可以查看php_control_status的狀態值,以確定問題所在,可能執行設備明令時所給的參數不正確 # 3.啟動正確,也可以調用PHP了,那你還說什么問題啊,要恭喜你可以正常使用了啊. # 4.如果問題還不能解決,請和本PHP超級配置模塊的開發者取得聯系. # # #附加說明: # 本PHP超級配置模塊,只是給出了一個通用的PHP在Apache之下調用的控制方式,使用本PHP超級配置模塊的相關行,需要你對Apache和PHP有一定了解. # 如果你需要更為具體的配置,請和我聯系,我將根據您的實際運行環境,作出適合您的實際運行環境的PHP超級配置模塊的定制版本. #[/code:1:284d7d5052] |
深空 回復于:2004-05-29 18:42:22 |
除了支持,我不知道說什么了-________-!! |
haohaoo 回復于:2004-05-29 19:21:07 |
看了有點了解,不過里面都是windows的啊,linux下面沒有那些文件啊 |
HonestQiao 回復于:2004-05-29 19:42:40 |
不是提示了,你把那些地方修改成為你實際的么 |
網絡混混 回復于:2004-05-29 20:37:31 |
除了說支持和閱
我沒有話說了。 |
cceon 回復于:2004-05-29 20:42:43 |
PHP4在Apache1的module模式下運行的好?
還是在CGI模式下運行的好? |
khj99 回復于:2004-05-30 09:10:01 |
根本就不止8種。
還存在php以靜態模式編譯進apache中. |
xiaohua 回復于:2004-05-30 09:13:02 |
好長的代碼 :em06: |
HonestQiao 回復于:2004-05-30 14:02:29 |
[quote:7adc6b0a08="khj99"]根本就不止8種。
還存在php以靜態模式編譯進apache中.[/quote:7adc6b0a08] [code:1:7adc6b0a08]Apache有兩種使用模塊的方法,其一是永久性包含進核心;如果操作系統支持動態共享對象(DSO),而且能為autoconf所檢測,則模塊還可以被動態編譯。[/code:1:7adc6b0a08] 我這里說的是module模式,沒有說是動態還是靜態的,動態靜態變異方式不同,使用起來基本上相同 |
HonestQiao 回復于:2004-06-01 18:53:23 |
http://bbs.chinaunix.net/forum/3/20040601/337646.html
嘿嘿,打算把這個做一課件,希望大家先提提意見哦,多多益善 |
sports98 回復于:2004-06-11 14:05:21 |
:shock: 在中國可能只有在中國才會這樣?
敢問樓上了此舉在國內服務器上能有幾臺服務器這樣配置? :em06: :em06: :em06: :em06: :em06: |
sports98 回復于:2004-06-11 14:07:11 |
另外我覺得你這個文章其實最主要的僅僅是介紹了apache里配置文件中的
<IfDefine>功能啊 |
Ecore 回復于:2004-12-19 18:29:10 |
人家是技術挑戰!
不是和你論國情! 談個技術問題,動不動搬國情搬出來干嘛?? |
bqsc 回復于:2005-03-16 10:33:48 |
真是技術無極限啊。 |
ttianxhtu 回復于:2005-03-16 13:15:02 |
學習一下
不過還是不怎么懂 |
yxg0512 回復于:2005-04-19 13:06:19 |
除了佩服 只剩敬仰了! |