一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

在Zeus Web Server中安裝PHP語言支持

前言
Zeus是一個運行于Unix下的非常優秀的Web Server,而php則是Unix下一個非常優秀的后臺腳本語言。 這兩個產品都是為非常喜歡的產品。為什么要寫這樣的一個Howto呢?是因為有大量的網站腳本是使用php開發的, 而這些程序運行在Zeus下也是一個非常好的選擇。寫這份文檔的目的在于能讓大家的php系統良好的運行于Zeus服務器上。
很早的時候我寫過一份整合Zeus和php的文章,它主要是講如何將php以FastCGI的本地調用方式來運行于Zeus中的, 本份Howto主要是來講如何讓php運行于Remote Responders方式下。因為這樣會比以local方式有更高的可擴展性和運行效率。

準備工作
首先你應該Zeus安裝完成,也不會過多的講如何安裝和配置Zeus服務器本身,因為它的安裝和配置實在是太簡單了。
如果有可能,最好將ports使用cvsup來升級一下。
對于php依賴的相關軟件如果能提前裝,則從ports中安裝好。如MySQL、GD等。 安裝fastcgi
注意,如果你安裝的php的版本會低于4.3.0哪么你才需要這步。新的php版本已經內置了fastcgi的庫。安裝fastcgi的方法非常的簡單:

root@~$cd /usr/ports/www/fcgi/
root@/usr/ports/www/fcgi$make;make install;make clean
編譯完成后我們可以在/usr/local/lib目錄中看到有libfcgi.a文件,同時在/usr/local/include目錄中會有fastcgi的所有頭文件。

 

編譯php
編譯php可以使用通常的php編譯選項,下面是我使用的一個配置:

./configure --prefix=/usr/local/php --enable-fastcgi --with-mysql=/usr/local
需要注意的是在php 4.3.0以上版本是使用的 --enable-fastcgi 選項,而php 4.3.0以前的版本應使用--with-fastcgi參數。
接著就是安裝php到系統中:
make
make install
編譯完成后,我們來測試一下安裝的php是能正確運行:

root@~$cd /usr/local/php/bin/
root@/usr/local/php/bin$./php
這時將進入php代碼輸入狀態,輸入

<? phpinfo(); ?>
按ctrl-d運行后會見到php返回的信息則為正確。

配置FastCGI/php
配置FastCGI
進入Zeus管理控制臺,打開需要配置的VHost配置。進入 API Support 中的 FastCGI 設置。在其中設置:
Enabling Support for FastCGI Programs : Enable
在Configuring FastCGI Remote Responders中設置:
Directory name : /usr/local/php/bin/php
Location: Machine name: localhost
Additional methods supported?:None
如果你的php應用不在本機,即使php沒有安裝在本機上,哪么也要設置 Docroot path 參數,它可以不存在于相應的目錄下。
都設置完成后,點擊 Apply 按鈕。 配置php解析指向
進入 URL Handling 中的 Handlers 設置。在 Adding a Handler 中設置以下參數:

File Extension : php
Specify the path and filename of the handler, relative to the document root : /usr/local/php/bin/php
HTTP 404 errors are handled by : The handler
注意,這里的 Specify the path and filename of the handler, relative to the document root 應和你上一步設置的 Directory name 值相同。
都設置完成后,點擊 Apply 按鈕。
所有的設置完成后使用vhost的commit功能將更 改提交并應用。這樣Zeus就設置好了Fastcgi和php的相關參數。

配置FastCGI/php啟動
在Zeus的rc.d目錄中新建一個S05php的文件,內容為:

#!/bin/sh

# Script to start and stop the persistent php runner for FastCGI.
# Please check paths before use.

# FastCGI php binary
FphpBIN=/usr/local/php/bin/php

# Location to place semaphore
SEMFILE=/tmp/php.pid
php_FCGI_CHILDREN=100
php_FCGI_MAX_REQUESTS=1000
export php_FCGI_CHILDREN
export php_FCGI_MAX_REQUESTS

# This is Linux - use /proc to increase the local (ephemeral) port range
#echo 1024 65000 > /proc/sys/NET/ipv4/ip_local_port_range

if [ -z "$ZEUSHOME" ]
then
cd `dirname $0`/..
ZEUSHOME=`pwd`
export ZEUSHOME
fi

case "$1" in
'start')

if [ -e $SEMFILE ]
then
echo FastCGI php error: already running.Restart FastCGI php now
kill `cat $SEMFILE`
sleep 5
fi

if [ ! -x $FphpBIN ]
then
echo FastCGI php error: please check that $FphpBIN is executable and exists.
exit 1
fi

echo Starting FastCGI php.
$ZEUSHOME/web/bin/fcgirunner --user=65534 --group=65534 --pidfile=$SEMFILE 8002 $FphpBIN
;;

'stop')
if [ -e $SEMFILE ]
then
echo Stopping FastCGI php.
kill `cat $SEMFILE`
rm $SEMFILE
exit 0
fi

'restart')
if [ -e $SEMFILE ]
then
echo Stopping FastCGI php.
kill `cat $SEMFILE`
sleep 5
fi
echo Starting FastCGI php.
$ZEUSHOME/web/bin/fcgirunner --user=65534 --group=65534 --pidfile=$SEMFILE 8002 $FphpBIN

*)
echo "usage: $0 {start|stop|restart}"
;;

esac
exit 1

在這個腳本中有以下內容需要視系統情況而 修改:

FphpBIN=/usr/local/php/bin/php 應設置為php的路徑
SEMFILE=/tmp/php.pid 生成php.pid的路徑,該目錄必須可寫
php_FCGI_CHILDREN=100 php進程數目
php_FCGI_MAX_REQUESTS=1000 每個php的進程在退出前能夠響應的請求數,用于釋放資源 上面兩個根據硬件配置和網站訪問量設置,默認值是8,500。 一般來說 php_FCGI_CHILDREN > 訪問并發最大值+10
php_FCGI_MAX_REQUESTS 如果設置過小,訪問量大的網站會因為php進程重起頻繁增加負荷。
#echo 1024 65000 > /proc/sys/NET/ipv4/ip_local_port_range 只用于linux
--user=65534 --group=65534 為php進程運行的用戶和組,一般設置為nobody用戶和組FreeBSD是65534/65534,Linux是99/99
最后,將S05php文件設置為可執行文件,并將FastCGI/php運行起來:

chmod 755 S05php
./S05php start
一但啟動后就會在ps -ax列表中顯示出php_FCGI_CHILDREN+1個php進程。
到你的vhost對應的Docroot目錄中建一個info.php文件,內容為:
<?
phpinfo();
?>
使用瀏覽器訪問vhost中的info.php文件,應該就可以看到php的info頁面了。

 

附注
感謝CCF的壇主hunreal寫出的S05php腳本,它真的非常好用!
如果還有什么想了解的可以到 Zeus php支持 頁得到更多的信息。

注:任何轉載或摘抄請注明文章出處(中文FreeBSD用戶組 http://www.cnfug.org)

 

php技術在Zeus Web Server中安裝PHP語言支持,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲欧美日韩在线精品一区二区 | 中文字幕一区二区三区四区五区人 | 色综合久久伊人 | 中文字幕日本不卡一二三区 | 亚洲欧美视频一区二区三区 | 99热这里只有精品国产动漫 | 五月婷色| 精品视频在线免费观看 | 爽爽影院色黄网站在线观看 | 漂亮大学生一级毛片 | 国产三级全黄在线观看 | 看全色黄大色大片免费 | 浮力影院第一页小视频国产在线观看免费 | 麻豆xfplay国产在线观看 | 激情一区 | 国产中文99视频在线观看 | 精品欧美亚洲韩国日本久久 | 铃原爱蜜莉福利一区在线观看 | 狠狠综合欧美综合欧美色 | 久国产精品久久精品国产四虎 | 国产二区视频 | 日韩一区二区三区视频在线观看 | 亚洲综合色婷婷 | 亚洲性色成人 | 国产精品日韩欧美在线第3页 | 欧美不在线 | 国产精品嫩草影院免费看 | 国产亚洲精品九九久在线观看 | 成人免费观看在线视频 | 国内精品久久影院 | 狂野欧美性猛交xxxx免费 | 黄色网址中文字幕 | 亚洲最黄视频 | 国产美女在线精品亚洲二区 | www.999精品视频观看免费 | 亚洲图片小说区 | 最新亚洲情黄在线网站 | 欧美精品成人久久网站 | 国内久久久久影院精品 | 欧洲免费视频 | 丁香婷婷激情 |