PHPlet在Windows下的安裝_PHP教程
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"
更改啟動檔案:
"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函數庫,所以有些術語可能說得不夠準確,歡迎指正!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP仍然流行的原因是其易用性、靈活性和強大的生態系統。 1)易用性和簡單語法使其成為初學者的首選。 2)與web開發緊密結合,處理HTTP請求和數據庫交互出色。 3)龐大的生態系統提供了豐富的工具和庫。 4)活躍的社區和開源性質使其適應新需求和技術趨勢。

要安裝 Laravel,需依序進行以下步驟:安裝 Composer(適用於 macOS/Linux 和 Windows)安裝 Laravel 安裝器創建新項目啟動服務訪問應用程序(網址:http://127.0.0.1:8000)設置數據庫連接(如果需要)

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

Laravel優化Web開發流程的方法包括:1.使用路由系統管理URL結構;2.利用Blade模板引擎簡化視圖開發;3.通過隊列處理耗時任務;4.使用EloquentORM簡化數據庫操作;5.遵循最佳實踐提高代碼質量和可維護性。

在C 中處理高DPI顯示可以通過以下步驟實現:1)理解DPI和縮放,使用操作系統API獲取DPI信息並調整圖形輸出;2)處理跨平台兼容性,使用如SDL或Qt的跨平台圖形庫;3)進行性能優化,通過緩存、硬件加速和動態調整細節級別來提升性能;4)解決常見問題,如模糊文本和界面元素過小,通過正確應用DPI縮放來解決。

AI可以幫助優化Composer的使用,具體方法包括:1.依賴管理優化:AI分析依賴關係,建議最佳版本組合,減少衝突。 2.自動化代碼生成:AI生成符合最佳實踐的composer.json文件。 3.代碼質量提升:AI檢測潛在問題,提供優化建議,提高代碼質量。這些方法通過機器學習和自然語言處理技術實現,幫助開發者提高效率和代碼質量。

要安全、徹底地卸載MySQL並清理所有殘留文件,需遵循以下步驟:1.停止MySQL服務;2.卸載MySQL軟件包;3.清理配置文件和數據目錄;4.驗證卸載是否徹底。
