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

歡迎訪問 生活随笔!

生活随笔

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

php

php的cgi的设置,apache中配置php支持模块模式、cgi模式和fastcgi模式

發布時間:2024/9/3 php 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php的cgi的设置,apache中配置php支持模块模式、cgi模式和fastcgi模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先安裝apache、mysql和php,依次順序安裝。

1.apache、mysql的安裝比較簡單,略過

2. php的安裝,我安裝的是php5.3.6內置了php-fpm,所以不需要再單獨下補丁了。

./configure –prefix=/usr/local/php5 /? --with-mysql=/usr/local/mysql /? --enable-fpm?? --with-apxs2=/usr/local/apache/bin/apxs

注意:

--enable-fastcgi

--enable-force-cgi-redirect

這2個php新版本已經內置支持,所以如果加上這2個參數,make完畢會提示這2個參數找不到,所以不需要加這2個參數了。

--with-apxs2

這個參數看到有的文章說需要fastcgi模式的話,就不能配置這個,其實也不完全是這樣,這個參數的用途只不過是把php的解釋模塊編譯成so文件添加到apache的modules中,并且自動添加到conf文件。如果我們不想用模塊模式的話,在httpd.conf中把:LoadModule php5_module?modules/libphp5.so這行注釋掉就可以了。

3.mod_fastcgi的安裝

# tar -zxvf mod_fastcgi-2.4.6.tar.gz

# cd mod_fastcgi-2.4.6

# cp Makefile.AP2 Makefile

# vim Makefile 將Makefile中的路徑改成你的apache的安裝路徑

# make install 安裝成功

安裝成功后,會自動把mod_fastcgi.so復制到/usr/local/apache/modules目錄

接下來是如何配置這4種模式:

1.模塊模式

這種模式最簡單,在http.conf中增加

LoadModule php5_module modules/libphp5.so

即可。然后在

AddType application/x-httpd-php .php

AddType applicaiton/x-httpd-php-source .phps

2.CGI模式

這種模式需要注釋掉

LoadModule php5_module modules/libphp5.so 這行。如果不注釋這行會一直走到handler模式。也就是模塊模式。

然后在httpd.conf增加action:

Action application/x-httpd-php /cgi-bin/php-cgi

如果在/cgi-bin/目錄找不到php-cgi.可自行從php的bin里面cp一個。

然后重啟apache,再打開測試頁面發現Server API變成:CGI/FastCGI。說明成功切換為cgi模式。

3.FastCgi模式,用apche內置進程管理器

首先要添加fastcgi模塊到httpd.conf配置文件:

LoadModule fastcgi_module modules/mod_fastcgi.so

這種模式注釋不注釋LoadModule php5_module modules/libphp5.so這行貌似沒什么關系,只要配置了以下模塊

FastCgiServer /usr/local/apache/cgi-bin/php-cgi -processes 20

AddType application/x-httpd-php .php

AddHandler php-fastcgi .php

Action php-fastcgi /cgi-bin/php-cgi

就會自動走到fastcgi模式。

然后重啟apache,這個時候用 ps aux|grep php就會發現有很多php-cgi進程在運行。說明配置生效

4.FastCgi模式,用php-fpm進程管理器

首先要添加fastcgi模塊到httpd.conf配置文件:

LoadModule fastcgi_module modules/mod_fastcgi.so

接著修改配置文件成:

FastCgiExternalServer /usr/local/apache/cgi-bin/php-cgi?-host 127.0.0.1:9000

AddType application/x-httpd-php .php

AddHandler php-fastcgi .php

Action php-fastcgi /cgi-bin/php-cgi

注意,127.0.0.1:9000是php-fpm的開啟端口,所以我們還需要把php-fpm打開。

/usr/local/php/sbin/php-fpm

打開后再ps aux|grep php,會發現很多php-fpm的進程:

root????? 7002? 0.4? 1.5? 13060? 1912 ???????? Ss?? 15:20?? 0:00 php-fpm: master process (/usr/local/php5/etc/php-fpm.conf)

nobody??? 7003? 0.0? 1.3? 13052? 1656 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7004? 0.0? 1.3? 13052? 1660 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7005? 0.0? 1.3? 13052? 1660 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7006? 0.0? 1.3? 13052? 1660 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7007? 0.0? 1.3? 13052? 1660 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7008? 0.0? 1.3? 13052? 1660 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7019? 0.0? 1.3? 13052? 1672 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7020? 0.0? 1.3? 13052? 1676 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7021? 0.0? 1.3? 13052? 1672 ???????? S??? 15:20?? 0:00 php-fpm: pool www

nobody??? 7022? 0.0? 1.3? 13052? 1676 ???????? S??? 15:20?? 0:00 php-fpm: pool www

總結

以上是生活随笔為你收集整理的php的cgi的设置,apache中配置php支持模块模式、cgi模式和fastcgi模式的全部內容,希望文章能夠幫你解決所遇到的問題。

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