PHPlet在Windows下的安裝_PHP教程

WBOY
發布: 2016-07-21 16:09:06
原創
917 人瀏覽過

PHPlet是什么?
很简单,它是一个使用PHP编写的Web服务器,可以替代我们常用的Apache或IIS。
为什么要介绍PHPlet?
因为它是PHPer们学习Web服务器原理的捷径。
因为它的程序结构很好,类似Java的面向对象编程,有很好的参考价值。
因为我认为PHP5和PHPlet相继发布稳定版本后,PHP5+PHPlet+SQLite(PPS)将是小型应用、程序演示的另外一种选择。
现在大部分的小型应用或者程序演示都是把Apache+PHP+MySQL(APM结构)做成exe或rpm安装包,它的容量在8M-45M左右。如果使用了PPS结构整个系统将会缩减到2-3M之内(SQLite是嵌入式数据库),而且省去了对Apache和MySQL的依赖。
PHPlet的运行方式?
PHPlet使用php_socktes.dll实现端口侦听。
PHPlet是常驻内存的,可以使用srvany.exe将它作为NT的服务运行。
PHPlet的多进程功能只能运行在Linux、FreeBSD、*unx系统等系统下,这是因为PHP的“进程控制函数库”不支持Win32平台。

好了,废话不多说,马上进入我们的PHPlet之旅。

一.资源下载:
l          PHP
ZIP-Format: http://cn.php.net/download/
TGZ-Format: http://cn.php.net/download/
要下载最新的稳定版本,这样会得到更好的性能和稳定性。我用的是PHP4.3.6,写这篇文档时PHP5还在测试阶段。
要下载ZIP包而不是安装包,因为安装版(其实是简化版)中没有我们需要的DLL动态链接库。

l           PHPlet
ZIP-Format: http://phplet.sourceforge.net/
TGZ-Format: http://phplet.sourceforge.net/
要下载最新的稳定版本,这样会得到更好的性能和稳定性。我用的是PHPlet0.0.7,写这篇文档时还没有稳定版本。

二.安装:
l          PHP

解压缩到D:\PHP4:
如果你是初学者最好释放到我说的目录,否则后面会带来一些麻烦。
创建cli_php.exe:
将D:\PHP4\cli\php.exe复制到D:\PHP4\cli_php.exe。
它是PHPlet的启动程序,复制到D:\PHP4是为了能跟php.exe共享php.ini。
PEAR的安装:
PHPlet扩展了Pear的类库,那么我们先来安装Pear。
前提是你的电脑处于连线状态,因为安装程序需要下载一部分组件(还没研究如何不下载)。
另外你的身份必须是Administrator,因为安装程序中会在Windows目录下创建pear.ini。
一切准备就绪后运行D:\PHP4\go-pear.bat开始安装。

第一步. 直接按回车(也可以CTRL+C退出:D):
Welcome to go-pear!

Go-pear will install the 'pear' command and all the files needed by
it.  This command is your tool for PEAR installation and maintenance.

Go-pear also lets you download and install the PEAR packages bundled
with PHP: DB, Net_Socket, Net_SMTP, Mail, XML_Parser, PHPUnit-0.6.2.

If you wish to abort, press Control-C now, or press Enter to continue:

 
第二步. 输入Pear下载地址:
用来指定Pear组件的下载地址和端口,可以直接按回车。
HTTP proxy (http://user:password@proxy.myhost.com:port), or Enter for none::

 
第三步. PHP路径设置:
一共7项,输入相应的序号就可以修改,输入"all"是修改全部,一般情况下只需要修改第7项。
选择第7项后会弹出一个windows的选择目录对话框,选择D:\PHP4。
Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation prefix                           : D:\PHP4
 2. Binaries directory                          : $prefix
 3. PHP code directory ($php_dir)   : $prefix\pear
 4. Documentation base directory   : $php_dir\docs
 5. Data base directory                      : $php_dir\data
 6. Tests base directory                    : $php_dir\tests
 7. php.exe path                                  :

1-7, 'all' or Enter to continue:

 
4.確認:
確認某些組件是否安裝,這裡要輸入"Y",因為PHPlet正用到他們。
The following PEAR packages are bundled with PHP: DB, Net_Socket, Net_SMTP,
Mail, XML_Parser, PHPUnit-0.6.2.
Would you like to install these as well? [Y/n] :

 
5.安裝或下載組件:
接下來請稍等幾分鐘,安裝程式會自動下載組件並安裝。
如果"PHPUnit-0.6.2"下載出錯將會報錯,這時就要檢查一下你的網路連線了。 (只要網路正常正常不會有問題,可以訪問http://pear.php.net試試)
Loading zlib: ok
Using local package: PEAR.......... ...ok
Using local package: Archive_Tar......ok
Using local package: Console_Getopt....ok
Using local package: XML_RPC.......... ok
Bootstrapping: PEAR...................(local) ok
Bootstrapping: Archive_Tar............(local ) ok
Bootstrapping: Console_Getopt.........(local) ok
Using local package: DB...............ok
Using local package: Net_Socket.......ok
Using local package: Net_SMTP.........ok
Using local package: Mail............. ok
Using local package: XML_Parser.......ok
Downloading package: PHPUnit-0.6.2....

好了,到這裡Pear已經安裝完畢。
修改php.ini:
將D:PHP4php.ini-dist改名為php.ini,然後開啟。

找到:
; Windows: "path1;path2"
;include_path = ".;c:phpincludes"
改為:
; Windows: "path1;path2"
include_path = ".;D:PHP4includes;D:PHP4PEAR"

找到:extension_dir = "./"    改為:extension_dir = "D:PHP4extensions"
 
l          PHPlet

如果壓縮到D:PH)目錄,否則後面會帶來一些麻煩。
更改設定檔:
開啟D:PHP4PHPletconfigphplet.conf

"WEB_ROOT" 修改為:"D:\PHP4\PHPlet\www"
"HTTP_HOSTNAME" 修改為:"localhost"
"HTTP_HOSTPORT" 修改為:"8080"
"HTTP_SERVER_MODE" 修改為:"sequential"
"HTTP_SERVER_DEBUG" 修改為:"false"
"HTTP_SERVER_DEBUG" 修改為:"false"
"HTTP_SERVER_DEBUG" 修改為:"false"
"HTTP_SERVER_DEBUG" 修改為:"false"
"HTTP_SERVER_DEBUG" 修改為:"false"
"PHP_UUTS" \php.exe"
"CLASSLOADER_SINTAX_CHECK" 修改為:"false"
更改啟動檔案:

開啟D:PHP4PHPletbinphpletstart.bat

link:http://www.knowsky.com


"PHP_EXE" 修改為:D:PHP4cli_php.exe
三.開始!啟動伺服器!
進入D:PHP4PHPletbin,雙擊phpletstart.bat啟動服務。
好了,打開瀏覽器輸入http://localhost:8080/phplet/HelloWorld看一下效果吧。
四.效能測試
    發現只要運行一次,無論對HelloWorld.php做任何修改(甚至刪除),也不會改變第二次刷新的結果(跟Java Servlet很像吧?),除非重新啟動伺服器。所以我覺得它的效能一定很棒,不出所料,請看我的測試結果:
    伺服器A(PHP4 PHPlet),特別選了台很爛的 AMD K6-2 400 128M。
    客戶機B(Windows2003 IE6),P42.6G 500M
    客戶機B輸入網址http://192.168.0.15:8080/PHPler/HelloWordphp.一直持續在60%。如果是Apache2 PHP4(CGI模式)以這樣的頻率刷新將會持續100%,時間長後有可能會沾光虛擬記憶體!

    當然了,上面只是片面的測試,做為WEB服務更主要的還是穩定,因為時間關係也沒功夫更詳細的測試。大家可以做更多測試後再一起討論。
五.注意事項
1. 上面說過PHPlet程式設計有點類似Java Servlet,只要執行一次無論對.php作任何更改(甚至刪除),也不會改變第二次刷新的結果。
2. PHPlet的HTTP_HOSTNAME(主機名稱)最好設定成你的IP而不是localhost,否則其它主機無法透過你的IP存取。
3. 程式中不要使用exit,要使用return退出,否則將會關閉PHPlet伺服器。
4. 應該用$response->write()方法輸入字串,因為print或echo會將字串輸出到終端上。
5. PHPlet不支援虛擬目錄和虛擬主機功能。
六.結束語
寫這篇文章之前並沒有接觸過Pear、PHPlet和Socktes函數庫,所以有些術語可能說得不夠準確,歡迎指正!

對PHPlet和其他Web伺服器熟悉的朋友希望能互相交流,如果你有任何問題也可以寫信給我。

為中國的PHP事業貢獻自己微薄的力量 ---- 毛松

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/314583.htmlTechArticlePHPlet是什麼? 很簡單,它是一個使用PHP編寫的Web伺服器,可以取代我們常用的Apache或IIS。 為什麼要介紹PHPlet? 因為它是PHPer學習Web服務...
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板