日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php cgi模块,PHP5模块和CGI

發布時間:2025/3/15 php 12 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php cgi模块,PHP5模块和CGI 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

把PHP5作為CGI安裝是一個快速運行PHP5的方法,并且不必修改PHP4的配置。

另外一個不必修改PHP4的配置用同時獲得完全的PHP5功能的方法是把PHP5設置在apache的另外一個端口上監聽來自客戶端的請求。比如apache的8080端口。這樣就可以在80端口上處理PHP4腳本,在8080端口上處理PHP5的面向對象的腳本,一舉兩得。

記住CGI安裝方式與模塊安裝方式相比有一些限制。它不能直接利用APACHE HTTP基本身份認證的優勢。也不能使用apache_note()函數讀取和設置notes 表中的值

。(apache_note() 是用于 Apache 的函數,可以取得或者設置請求 notes 表中的值。如果只有一個參數調用,則返回記錄 note_name 的當前值。如果用兩個參數調用,則將記錄 note_name 的值設為 note_value 并返回記錄 note_name 的前一個值。)引用自 | php手冊->函數參考->apache函數庫->apache_note

php手冊下載地址http://cn2.php.net/distributions/manual/php_manual_zh.chm

作為CGI配置PHP5

刪除?--with-apxs.

加入?--enable-force-cgi-redirect選項.

加入 --prefix=/usr/local/php5選項.

定制?php.ini.

PHP5 要用--prefix=/usr/local/php5選項強制安裝到其知道的目錄并PHP4隔離開。并且不能覆蓋PHP4的文件和配置數據。

在apache配置文件HTTP.CONF中添加下列指令,然apache知道PHP5的cgi程序的位置。也就是做一個APACHE到PHP5 CGI的目錄映射。ScriptAlias /php5 /usr/local/php5/bin

Options +ExecCGI +FollowSymLinks

AllowOverride None

ScriptAlias

把web服務器的URL路徑映射到本地文件系統,既然我們這里是作為CGI程序安裝。那么apache必須得知道cgi程序得位置。例如,ScriptAlias /book/php5 /usr/local/php/php5/bin,服務器域名為www.apache.org那么當客戶端的請求到達apache服務器的時候,它就會到/usr/local/php/php5/bin

這個本地文件系統去執行存儲在其中的程序。

建立了映射后,下一步是路由特定文件類型的文件到CGI去執行,這可以通過兩種方法來配置,一種是在http.conf配置文件中添加如下指令

AddHandler php-cgi-script .php

Action php-cgi-script /php5/php

Options +ExecCGI

AddHandler 指令表示任何以 .php結尾的文件都被apach服務器認為是 php-cgi-script腳本,并且轉交給PHP CGI去執行。在一行中可以設置多個文件類型。

例如

AddHandler php-cgi-script .php .phpx .phtml .pxml

那么以php,phpx,phtml,pxml結尾的文件都被認為是php腳本而移交給PHP解析器解析和執行。

第二行 Action 指令告訴apeche php-cgi-script?腳本應該被位于/php5/php目錄下的文件處理,因為先前你做了URL /php5?到本地文件系統的?/usr/local/php5/bin/ 的映射,所以此命令實際上是映射到

了/usr/local/php5/bin/php目錄,這實際上是PHP5 CGI安裝的位置。

最后,既然把PHP5作為CGI運行,你必須打開 +ExecCGI 參數(打開腳本的執行權限),讓apache允許在這個目錄下執行腳本。另外一種方法是在腳本目錄下創建.htaccess訪問控制文件,并在其中加入上面之間的三行指令。apache會在有客戶端請求到達此目錄時自動檢查改文件,看是不是有適當的權限使PHP腳本能夠執行。

用.htaccess配置文件不用重新啟動apach服務器就可以使對配置的修改立即生效。但是,它要求你打開AllowOverride 選項(設置為Options 或 All)。這樣會降低APCHE的執行效率,因為每次請求到達此目錄時apache都要檢查和解析這個文件。當并發請求劇增時,apache服務器的效率會嚴重下降。所以這種方法在并發訪問高的網站時不推薦的。端口????另一個一舉兩得的方法時在一個端口運行PHP4,在另一個端口運行PHP5,這種方法最適合于內部調試和開發。這樣,程序員可以檢查php程序在PHP5環境下的運行狀態。

第一步 在http.conf文件中添加如下兩行

Listen 80

Listen 8080

像其他的web服務器一樣,apache在80端口監聽客戶端請求。上面兩行告訴apache同時在80和8080端口監聽客戶端請求。

然后 設置虛擬主機

ScriptAlias /php5 /usr/local/php5/bin

Options +ExecCGI +FollowSymLinks

AllowOverride None

AddHandler php-cgi-script .php

Action php-cgi-script /php5/php

Options +ExecCGI

用實際的域名替換_default_。如果使用多個虛擬主機,還要用DocumentRoot指令為每個虛擬主機指定不同的根目錄。

例如:

# Virtual Host Specific Options

DocumentRoot /www/www.example.com

# Load PHP 4 Apache Module

LoadModule php4_module /usr/lib/apache/1.3/libphp4.so

# Repeated Configuration Options

DocumentRoot /www/www.example.com

# Add PHP 5 CGI Script

ScriptAlias /php5 /usr/local/php5/bin

Options +ExecCGI +FollowSymLinks

AllowOverride None

那么現在你就可以從瀏覽器中用 http://www.mysite.org/訪問 PHP4。從http://www.mysite.org:8080/訪問PHP5了。

總結

以上是生活随笔為你收集整理的php cgi模块,PHP5模块和CGI的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。